新手问题 为什么我设置 RAILS_ENV 后并没有生效?

mrrocket · 2020年11月13日 · 最后由 mrrocket 回复于 2020年12月01日 · 353 次阅读

我是个新手,最近我用的 bitnami 安装 redmine,按照网上的方法,在 enviroment.rb 中设置 ENV['RAILS_ENV'] ||= 'test'。 重启 mysql 服务器后,html 中打印<%= Rails.env %>,显示的是 production,通过 rails console,打印 Rails.env 却是 development,为什么会出现这种情况?我需要怎么做才能修改配置环境?

ENV['RAILS_ENV'] ||= 'test' 的意思是,如果 ENV['RAILS_ENV'] ||= 'test' 没有值,则给一个默认值 test

不太清楚你所说的 “重启 mysql 服务器后” 是指什么,可能是说正式的服务器?看你的启动脚本,可能他是以 production 环境启动的。

rails console 如果不给 -e production,默认是 development 环境

如果你启动的时候要指定环境需要 rails serverrails console 都提供了 -e 参数(你可以通过 rails s --help `rails c --help rails srails server 的缩写形式 rails crails console 的缩写形式),比如 rails s -e test 就会以 test 环境来启动了

原因已经找到了,我的运行环境是 passenger,需要在 vhost 中添加一行

RailsEnv development

详细看:https://blog.csdn.net/iefreer/article/details/23440097

mrrocket 关闭了讨论。 12月01日 14:34
需要 登录 后方可回复, 如果你还没有账号请 注册新账号