在app文件夹中需要gem时,Gemfile中是否需要:false?

时间:2016-01-22 09:55:36

标签: ruby-on-rails ruby

例如:

在我的Gemfile中有两个宝石:

gem 'spreadsheet', require: false

gem 'stripe', require: false

我在rake任务中使用'spreadsheet',很明显require: false可以提高性能。

但是我的rails应用程序还使用'stripe'在app文件夹(models,controllers..etc)中进行付款,这种文件夹通常不会被执行。 (在生产服务器上,使用config.eager_load = true

require: false设置gem 'stripe'会更好吗?

我直接阅读了这个问题,但无法得到明确答案:Bundler: What does :require => false in a Gemfile mean?

1 个答案:

答案 0 :(得分:1)

您将在应用程序启动时获得一些改进 - 应用程序启动时未加载require: false的宝石。这也有助于测试模式 - 请参阅http://www.andywaite.com/2015/08/15/faster-tdd-in-rails-with-bundlers-require-false/。此外,如果您只需要rake任务中的那些宝石,或者一次性脚本,主应用程序将使用更少的内存,这总是一个很好的奖励。