4

配置不同变量的最简单方法是什么(例如,我在标签 link_to 中有变量,取决于当前的 Rails.env)?

<%
    if Rails.env == 'development'
        domain = 'somedomain.me'
    elsif Rails.env == 'staging'
        domain = 'example.com'
    end 
    %>
    <%= link_to 'Back', root_url(:subdomain => 'www', :domain => domain), :class=>"btn btn-primary"%>

我想将此 if - elsif 语句移动到其他地方,或者如果存在任何“配置文件”,甚至将其删除

4

2 回答 2

4

有一个很棒的宝石,叫做rails_configgithub repo

但是如果你只想配置这个并且只有这个变量,你可以在 rails 已经拥有的环境配置文件中创建一个常量。

就像是:

在您的 config/environments/production.rb

# production.rb
Rails.configuration.my_awesome_changing_domain = "somedomain.me"

在你的 config/environments/development.rb

# development.rb
Rails.configuration.my_awesome_changing_domain = "stackoverflow.com"

在你的 config/environments/staging.rb

# staging.rb
Rails.configuration.my_awesome_changing_domain = "news.ycombinator.com"

在此线程的另一个答案中讨论了其他方法: https ://stackoverflow.com/a/5053882

最好的祝福

于 2012-12-19T14:19:59.847 回答
0

这是一篇关于在 Rails 上设置变量的好博文:http ://railsapps.github.com/rails-environment-variables.html

于 2012-12-19T14:37:17.493 回答