创建说cms应用程序时,网站的具体细节会因网站而异,我应该在哪里存储这些信息?
诸如:网站名称,支持电子邮件,smtp设置等等?
答案 0 :(得分:5)
假设您的意思是应用程序的配置数据,这就是我的工作:
我使用我的配置信息创建一个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。
答案 1 :(得分:1)
这样设置。
$ 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