在哪里存储网站特定信息,如网站名称,管理员电子邮件等?
在创建一个cms应用程序时,网站的具体细节将根据网站的不同而有所不同,我应该在哪里存储这些信息?
例如:网站名称,支持电子邮件,smtp设置等?
假设您的意思是应用程序的配置数据,这就是我的工作:
我用我的配置信息创建了一个config/app_config.yml
文件,如下所示:
site_name: This awesome site support_email: me@mysite.com
然后,在config/application.rb
的顶部(在第一个’require’语句的正下方),我添加:
# Load application-specific configuration from app_config.yml require 'yaml' APP_CONFIG = YAML.load(File.read(File.expand_path('../app_config.yml', __FILE__)))
现在,每当我需要访问配置数据时,我都可以通过APP_CONFIG哈希来实现,如下所示:
html = "For support, please e-mail #{APP_CONFIG['support_email']}"
注意,上面是针对Rails 3.对于rails 2,不是在application.rb中加载配置,而是将语句放入config / preinitializer.rb。
有关详细信息,请参阅http://asciicasts.com/episodes/226-upgrading-to-rails-3-part-2 。
像这样设置。
$ vi config/environments/development.rb config.site_name = "Your Site Name" config.site_url = "localhost:3000"
您也可以使用’application.rb’环境。
$ vi config/application.rb module YourAppName class Application < Rails::Application config.site_name = "Your Site Name"
如何使用它。
<%= YourAppName::Application.config.site_name %> @url = YourAppName::Application.config.site_url
您可以从此处检查您的AppName
$ vi config/application.rb module YourAppName class Application < Rails::Application