【问题标题】:What the difference between "RAILS_ENV=production rails c" and "rails c -e production"“RAILS_ENV=production rails c”和“rails c -e production”有什么区别
【发布时间】:2014-09-12 01:15:27
【问题描述】:

我曾经认为我可以 ssh 到我的服务器,更改目录并运行

rails c -e production

然后它会提示我

Loading production environment (Rails 4.1.2)
2.1.0 :001 > 

我认为的生产环境

但是当我在控制台中进行查询时,我从 mySql 收到拒绝访问消息。

然后我尝试像这样启动控制台

RAILS_ENV=production rails c

得到相同的提示,我的查询全部工作。

那么第一个语句的目的是什么?

【问题讨论】:

    标签: ruby-on-rails-4 rails-console


    【解决方案1】:

    除非您的应用程序中有代码使用 ENV['RAILS_ENV'] 而不是调用 Rails.env 来确定它已加载的环境,否则没有区别。

    【讨论】:

    • 我只找到了一个 ENV['RAILS_ENV'] 实例。它是 test_helper.rb 中的一个设置器。但这并不能解释为什么在调用 rails c -e production 时会加载错误的设置,不是吗?
    • 在您的应用程序中可能还有其他东西也依赖于此,例如 gem 或类似的东西。
    猜你喜欢
    • 1970-01-01
    • 2023-03-15
    • 1970-01-01
    • 2020-03-30
    • 2015-09-29
    • 1970-01-01
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多