rails console和bundle console之间有什么区别?

时间:2014-11-18 17:06:11

标签: ruby-on-rails

任何人都可以解释我或给我一个资源,我可以了解rails控制台和捆绑控制台之间的区别吗?有没有办法在irb中自动加载所有宝石而不是require gem?

2 个答案:

答案 0 :(得分:15)

以下是一个很好的解释:What's the Difference Between irb, bundle exec irb, bundle console, and rails console?

  

irb 是基本的Ruby控制台。它忽略了你的Gemfile,只有核心   Ruby类可以在不需要它们的情况下访问。它不容易   加载Bundler在RubyGems的加载路径之外安装的gems。

     

bundle exec irb 就像irb,如果你还需要bundler / setup。您   只能轻松地需要Gemfile.lock中的宝石,但是你   无论Bundler把它们放在哪里,都可以装载这些宝石。

     

捆绑控制台就像捆绑exec irb一样,如果你也打过电话   Bundler.require。 Gemfile中的所有gem,除了那些   标记为require:false,可以在不需要它们的情况下使用。是真的   当你编写自己的宝石或在非Rails上工作时很方便   代码。

     

rails console 就像在Rails应用程序中运行捆绑控制台一样   你还需要config / environment.rb。你可以玩你的整个   Rails应用程序,自动加载和数据库连接工作,一切都是   迷上了你期望的方式。如果您正在使用Rails应用程序,请执行此操作   是最有用的控制台。

答案 1 :(得分:1)

亚历山大的答案很棒。

我只是想补充说还有运行

的选项
  

捆绑exec rails console

它结合了来自Aleksandr的答案的 rails console bundle exec irb 的所有内容。