我应该在哪里放置仅用于rake任务的类文件

时间:2014-11-12 01:55:32

标签: ruby-on-rails ruby

我有一个只用于rake任务的课程Foo,该课程需要nokogiri

目前我正在Gemfile写这样的内容:

gem 'nokogiri', require: false

将类文件放在config/initializer/foo.rb

require 'nokogiri'
class Foo
...
end

我知道如果我在初始化程序目录中需要gem,Gemfile中的require: false是没有意义的。

我应该把文件放在这样的情况下?

1 个答案:

答案 0 :(得分:0)

  • 首先,您可以随时将您的类文件放到app/models,如果它代表某些数据或数据处理 - app/modles不仅适用于ActiveRecord,您知道。任何纯红宝石类都可以成为一个模型。 ;)

  • 您可以安全地从该文件中请求nokigiri并使用rake任务中的该类 - 一切都应该没问题。不需要来自initializers / gemfile的nokigiri,除非您在其他地方也使用它。

  • 顺便说一下,为什么你不想要Gemfile中的nokigiri