Spree扩展中的新模型:未初始化的常量Spree :: MyClass

时间:2015-04-04 08:34:31

标签: ruby-on-rails ruby spree

我正在尝试在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”目录,但没有任何帮助。

2 个答案:

答案 0 :(得分:1)

最有可能的是,你需要将你的课程放入:

/spree_extension/app/models/spree/my_class.rb

因为rails总是希望在文件中找到具有相同名称的类,所以在具有模块名称的文件夹中。

答案 1 :(得分:0)

问题实际上是我创建了一个表my_class

由于我将其重命名为spree_my_class,因此无效。