2014-01-09 144 views
4

有以下任务:我的应用程序有一个名为'delivery_time'的变量;这个变量可以通过管理面板进行更改。我认为将它存储在某个数据库表中并不是一个好方法。我如何将它存储在配置或其他任何东西?可能我应该将其存储在数据库中吗?在Rails应用程序中存储一些应用程序设置

+0

http://stackoverflow.com/questions/20857886/where-can-任何地方调用它AppConfig.delivery_time我店现场 - 广变量 - 在护栏-4 –

回答

0

您可以使用基于Hash实现基于文件的持久性机制的PStore。基于

OR YAML方法

1

基本上是静态的背景中,我们使用以下的宝石

https://github.com/railsjedi/rails_config

所以这个宝石会生成以下文件

config/settings.yml 

您可以定义变量( my_config)在这个yml文件中。并且按如下方式使用它在你的应用程序:

Settings.my_config 

或者你可以使用任何类似的宝石

1

你可以设置在配置文件轻松存储这样的:

  1. 创建config.yml和存储您的设置

    delivery_time: '...'

  2. 添加这个配置到初始化/ load_config.rb

     
    require 'ostruct' 
    require 'yaml' 
    
    app_config = YAML.load_file(File.join(::Rails.root, 'config', 'config.yml'))[Rails.env] 
    ::AppConfig = OpenStruct.new app_config 
    

而且你可以在项目