如何在开发环境和生产环境中定义不同的变量?

问题描述:

像远程服务器和端口号,这真是烦人来回换,我注意到有一个为西纳特拉一个如何在开发环境和生产环境中定义不同的变量?

set :environment, :production/:development 

配置选项,但我不知道如何不同的变量设置为每个模式

,你可以有这样的事情:

configure :development do 
    set :this 
end 

configure :production do 
    set :that 
end 

如果设置几个:

对c lassic西纳特拉应用:

port = 4567 if development? 
port = 80 if production? 

对于模块化西纳特拉应用:

port = 4567 if Sinatra::Base.environment == :development 
port = 80 if Sinatra::Base.environment == :production 

但是,如果你有几个环境相关的设置,使用以上三种的建议是清洁:

configure :development, :test do 
    port = 4567 
    url = "https://secure.appname.com" 
    ... 
end