我有一个模型,现在看起来是这样的:在Rails模型中包含一个lib - 是否需要“需要”?
class Logo < ActiveRecord::Base
include ImageManipulation
...
end
ImageManipulation
是一个名为image_manipulation.rb
库,位于/lib/
我可以没有任何问题的模式工作,但是今天我不得不这样做通过一些操作轨道控制台,并尝试做Logo.delete_all
的时候,我得到这个错误:
NameError: uninitialized constant Logo::ImageManipulation
所以,我改变我的模型看起来像这样:
require 'image_manipulation'
class Logo < ActiveRecord::Base
include ImageManipulation
...
end
我的问题是......为什么当我想在轨道控制台中使用Logo模型时需要这些必要条件,但在启动rails s
并通过我的应用程序操纵模型时没有必要?