我有一个相对简单的Rails应用程序,我想存储管理员用户可以在应用程序运行时更改的各种配置设置,例如,允许对帖子进行评论或更改日期的显示格式。
我知道我可以在environment.rb文件中存储常量等,但是这些似乎只有在服务器重新启动时才会加载。
是否有其他地方可以定义此信息,或者最好将其保存在数据库中?
任何建议都很感谢。
谢谢。
发布于 2010-01-25 01:40:33
你可以使用数据库。创建一个单独的表"settings“,用于存储所需的键/值参数。这种解决方案的缺点是会影响性能(每次需要设置时都会查询DB )。要解决此问题,您可以像"cache_money“那样通过缓存进行读/写,也可以使用"Rails.cache”创建自己的缓存
发布于 2011-11-07 23:02:56
您可以使用rails gem,它是rails-settings gem的一个分支(在另一个答案中由Yi-Ru Lin链接)。
设置完成后,您将能够执行以下操作:
Setting.foo = 123
Setting.foo # returns 123
您还可以管理模型上的设置,例如:
user.settings.color = :red
user.settings.color # returns :red
发布于 2010-01-25 09:49:32
试着看看它可能就是你需要的。
https://stackoverflow.com/questions/2127960
复制相似问题