Rails控制台默认环境
在我的开发机器上:
$ bundle exec rails console Loading development environment (Rails 3.2.3) 1.9.3p194 :001 > Rails.env => "development"
这是预料之中的。 到现在为止还挺好。
然而在我的生产服务器上(我使用Capistrano部署),我得到了完全相同的结果:
$ bundle exec rails console Loading development environment (Rails 3.2.3) 1.9.3p194 :001 > Rails.env => "development"
在任何一台机器上,我都可以这样做:
$ bundle exec rails console production Loading development environment (Rails 3.2.3) 1.9.3p194 :001 > Rails.env => "production"
我的问题是:在生产服务器上,不应该bundle exec rails console
默认加载生产环境,而不是开发环境? 如果没有,为什么不呢?
rails可执行文件无法知道应在哪台机器上运行哪个环境。
您可以将export RAILS_ENV=production
放在要启动控制台的用户的~/.bashrc
或~/.bash_profile
文件中。
RAILS_ENV是一个与其他任何变量一样的变量,它总是默认为开发
如果你喜欢,你可以随时在生产服务器上打开’〜/ .bash_profile’并添加:
alias sc="bundle exec rails console production"
然后运行source ~/.bash_profile
为你的终端会话重新加载该文件,你可以调用sc
来加载控制台。
- 生产环境变量
- Capistrano 3副本策略相当于
- 使用Capistrano进行部署时,Rails 5控制台无法正常工作
- 重启Unicorn问题(capistrano)
- Capistrano 3 SSHKit :: Runner :: ExecuteError:在host 代理上执行时发生exception无法使用请求的身份对数据进行签名
- 是否有可能让Capistrano通过反向SSH隧道进行结账?
- Capistrano迁移部署
- 使用capistrano在ec2上部署rails网站,但它没有显示在浏览器上,这里是网站 – > http://passionate4.net/
- 如何在Rails中存储第三方服务的凭据