对象不支持#inspect

bub*_*arx 7 ruby ruby-on-rails rails-console

在 ruby​​ 控制台中运行简单任务时遇到问题。如果我跑

user = User.find(10)
Run Code Online (Sandbox Code Playgroud)
User Load (0.6ms)  SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT $2  [["id", "10"], ["LIMIT", 1]]
(Object doesn't support #inspect)
Run Code Online (Sandbox Code Playgroud)

我收到“对象不支持#inspect”错误。我的同事有完全相同的分支机构,没有问题。在其他分支上我也没有这个问题。肯定有一个结果,像这样运行就可以了。

user.first_name
=> "Tom"
Run Code Online (Sandbox Code Playgroud)

我什至删除了分支,重新下载,但仍然遇到同样的问题。已删除 gemfile,捆绑...尝试了我所知道的一切。我什至打开和关闭了笔记本电脑。

bub*_*arx 7

不一定是这个问题的完整答案,但我们尝试使用 pry gem 而不是 IRB。

gem 'pry-rails'
Run Code Online (Sandbox Code Playgroud)

将其添加到我们的开发组中,现在使用 pry 而不是 irb。没有问题。

一定是IRB存在某种腐败行为。我们使用的版本是1.3.5

  • 我可以确认我在 Rails 环境中使用新的默认 ruby​​ 调试 gem 得到了相同的行为。撬轨工作正常。 (2认同)