当RAILS_ENV =生产时,Rails核心模块扩展未加载

时间:2013-07-08 06:13:18

标签: ruby-on-rails-3.2 rails-engines activesupport

在Rails 3.2.12 中,我尝试按照建议Enumerable向核心here模块添加方法,我就是建议require_dependency使用config.watchable_dirshere。我的方法在开发服务器和控制台中运行良好,但是当我rake assets:precompile或尝试部署时,我得到No such file to load -- lib/extensions/enumerable。我错过了什么来从我的lib目录中适当地自动加载这个方法?

配置/ application.rb中

...
module Myapp
  class Application < Rails::Application
    ...
    config.watchable_dirs['lib/extensions'] = [:rb]
  end
end
...

LIB /扩展/ enumerable.rb

module Enumerable
  def each_with_previous
    self.inject(nil){|prev, curr| yield prev, curr; curr}
    self
  end
end

应用程序/模型/ mymodel.rb

class Mymodel
  ...
  require_dependency 'lib/extensions/enumerable.rb'
  ...
end

1 个答案:

答案 0 :(得分:1)

我认为lib中的require_dependency是无关的:

require_dependency 'extensions/enumerable.rb'