无法在生产中启动 rails 控制台:选项 -e 无效



由于某种原因,我们无法在生产中运行 rails 控制台。该命令rails console -e production适用于我们的 Windows 机器,但在我们的 Mac 上失败。

这篇SO帖子解释了如何解决它,但是有人可以解释为什么我们在一台机器上而不是另一台机器上看到此错误消息吗?

/usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.12/lib/rails/commands/console.rb:23:in `block in start': invalid option: -e (OptionParser::InvalidOption)
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.12/lib/rails/commands/console.rb:18:in `new'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.12/lib/rails/commands/console.rb:18:in `start'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.12/lib/rails/commands/console.rb:8:in `start'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.12/lib/rails/commands.rb:41:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

谢谢!

就像错误所说的那样,-e不是 rails 控制台命令的有效选项(在您的 Rails 版本中)。这是正确的用法:

$ rails console --help
Usage: console [environment] [options]
    -s, --sandbox                    Rollback database modifications on exit.
        --debugger                   Enable ruby-debugging for the console.
        --irb                        DEPRECATED: Invoke `/your/choice/of/ruby script/rails console` instead

实际上,我确实看到了-e选项。有趣

rails console --help

Usage: rails console [environment] [options]
    -s, --sandbox                    Rollback database modifications on exit.
    -e, --environment=name           Specifies the environment to run this console under (test/development/production).
                                     Default: development
        --debugger                   Enable the debugger.
rails console -e production

给我

Loading production environment (Rails 4.0.1)
irb(main):001:0>

我在轨道 4.0.1 上。

编辑 - 错过了有关 3.2.12 中问题的部分。

最新更新