我正在尝试在spree扩展中创建一个新模型。我生成了一个模型,它位于/spree_extension/app/models/my_class.rb中:
module Spree
class MyClass < Spree::Base
belongs_to :product
end
end
但是当我启动我的应用程序时,没有Spree :: MyClass,我收到此错误:
NameError: uninitialized constant Spree::MyClass
我尝试将my_class.rb移动到“spree”目录,但没有任何帮助。
答案 0 :(得分:1)
最有可能的是,你需要将你的课程放入:
/spree_extension/app/models/spree/my_class.rb
因为rails总是希望在文件中找到具有相同名称的类,所以在具有模块名称的文件夹中。
答案 1 :(得分:0)
问题实际上是我创建了一个表my_class
。
由于我将其重命名为spree_my_class
,因此无效。