有时,我有理由希望将rails控制台作为irb启动,而不是pry (与pry一样令人敬畏)。它将默认为pry,因为pry包含在Gemfile中。现在是怎么做的?
我认为在运行rails console时曾经有一个--irb选项,但现在似乎已经没有了。当我尝试时,我会收到一条弃用错误消息。
详细信息
如果我只运行"rails控制台“,就需要我去窥探。
如果我运行"rails控制台-irb=irb":
$ rails c -irb=irb
--irb option is no longer supported. Invoke `/your/choice/of/ruby script/rails console` instead我的Gemfile中的相关行:
gem 'rails', '3.2.18'
gem 'pry-rails'
gem 'pry-plus'发布于 2015-10-26 13:18:49
调用rails console或rails c时启动pry是由pry-rails gem设置的。如果您查看pry问题,那么there is one描述了一个解决方案。
将环境变量DISABLE_PRY_RAILS定义为1。
因此,您可以使用以下命令调用rails控制台,而无需查询:
DISABLE_PRY_RAILS=1 rails c发布于 2015-08-20 23:21:50
在Rails 4中工作:在您的application.rb中,在您的应用程序类中,把这只小狗放进去。
# Use the IRB console instead of the Pry one
console do
require 'irb'
config.console = IRB
end我再也拿不起探听的控制台了。它总是在不可预测的时候把我的光标放在奇怪的地方。我甚至无法描述,但如果你知道我在说什么,知道解决办法,请告诉我。
发布于 2017-08-15 23:09:14
受上述答案的启发,我将以下内容添加到application.rb中的类定义中,这样就可以从控制台切换Pry:
console do
if ENV['IRB']
require 'irb'
config.console = IRB
end
end然后,您可以运行rails c来获得一个Pry控制台,并运行IRB=true rails c来获得一个IRB控制台。这是很容易修改,如果你想要逆。在Rails 4和5中工作。
https://stackoverflow.com/questions/25145937
复制相似问题