在Rails 4.2 中撬不加载本地应用程序环境

Pry not loading local app environment in Rails 4.2

我最近安装了 pry 来替换我的 irb。起初它工作正常,但现在每次我 运行 pry 它根本无法识别本地应用程序环境。我得到如下内容:

[3] pry(main)> show-models
NameError: undefined local variable or method `show' for main:Object
from (pry):2:in `__pry__'

我已经尝试卸载并重新安装 pry-rails gem 并且我已经将以下代码添加到初始化文件中:

Rails.application.configure do
  # Use Pry instead of IRB
  silence_warnings do
    begin
      require 'pry'
      IRB = Pry
    rescue LoadError
    end
  end
end

有什么想法吗?我似乎找不到这方面的任何信息。

我的 gem 文件如下所示:

group :development, :test do

  # Call 'byebug' anywhere in the code to stop execution and get a debugger console
  gem 'byebug'
  gem 'pry-rails'
  gem 'pry-byebug'

end

我也用pry

我也在使用 pry 但还没有看到像 show-models 这样的命令。它对我也不起作用。而且我从不使用这样的命令。使用 Model.all 工作 fine.I 如果您使用的命令是 pry 的功能,则不要。如果是这样,请访问其文档。我认为它的问题是由于你给出了错误的命令。

你可能 运行 使用 pry 命令窥探,而你应该使用 rails console 命令(确保你 运行 从你的 Rails应用程序目录)。如果这对您不起作用,请尝试 bin/rails consolebundle exec rails console 命令。

我在使用 prybyebug 时遇到了一些不同的问题。

我删除了byebug,一切正常。

希望它也能解决你的问题。

虽然

我在我的 gemfile 中使用 gem 'pry' 而不是 gem 'pry-rails'

不确定是什么原因,但系统重启就解决了。问题已解决。