【问题标题】:NoMethodError in pry-stack_explorer when using rails console使用 rails 控制台时 pry-stack_explorer 中的 NoMethodError
【发布时间】:2014-09-04 02:30:15
【问题描述】:

我正在为rails console 使用pry。

每当我在控制台中评估某个值时,NoMethodError 就会在bindings_equal? 中引发,这是pry-stack_explorer gem 的一种方法。输入输出如下。

这不是有害的,而是令人讨厌的。我想删除它。

谁能帮忙?

> bundle exec rails console

Loading development environment (Rails 4.1.5)

Frame number: 0/21
[1] pry(main)> 
[2] pry(main)> 
[3] pry(main)> 1
when_started hook failed: NoMethodError: private method `eval' called for nil:NilClass
{My Bundle Directory}/ruby/2.1.0/gems/pry-stack_explorer-0.4.9.1/lib/pry-stack_explorer.rb:109:in `bindings_equal?'
(see _pry_.hooks.errors to debug)
=> 1
[4] pry(main)> 

我使用这些与撬有关的宝石:

gem 'pry-rails'
gem 'pry-remote'
gem 'pry-byebug'

谢谢。

【问题讨论】:

  • 在不使用出色打印的情况下看到同样的问题,所以下面的答案对我来说并没有真正的帮助。不确定在您的上下文中是否存在很棒的打印。
  • 当我遇到这个问题时,我使用了很棒的打印并且有~/.pryrcPry.config.print。就我而言,问题是由于撬动和出色打印的干扰而发生的。所以我无法解释你的情况。

标签: ruby-on-rails ruby pry pry-rails


【解决方案1】:

我必须添加

require 'awesome_print'
AwesomePrint.pry!

致我的~/.pryrc(根据AwesomePrint docs)修复此错误。

有些人提到从他们的~/.pryrc 中删除Pry.config.print,但我什至没有~/.pryrc,所以看来这可以通过同时使用awesome_printpry 来实现。

【讨论】:

    【解决方案2】:

    我运行的 gem 与你不同,但遇到了相同的错误。

    我在github项目上started an issue

    【讨论】:

    • 我的问题也是同样的原因造成的。从我的.pryrc 中删除Pry.config.print 会关闭错误。非常感谢!
    • 根据awesome_print's readme,为了整合pry和awesome_print,现在我们应该使用AwesomePrint.pry!而不是Pry.config.print
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多