我在我的 Rails 3.2 应用程序中使用 Spree,我想扩展 Spree 的 Product 类以更好地满足我的需求,例如与我的应用程序中的另一个模型建立关系。最好的方法是什么?我在项目文档中找不到任何关于它的信息
如果我想向 Product 资源添加新的属性/字段怎么办?我也找不到它的迁移:/
提前致谢 :)
我在我的 Rails 3.2 应用程序中使用 Spree,我想扩展 Spree 的 Product 类以更好地满足我的需求,例如与我的应用程序中的另一个模型建立关系。最好的方法是什么?我在项目文档中找不到任何关于它的信息
如果我想向 Product 资源添加新的属性/字段怎么办?我也找不到它的迁移:/
提前致谢 :)
最好的办法是product_decorator.rb
在您的应用程序中创建一个。
这将如下所示:
Spree::Product.class_eval do
...
end
在那里,您可以随意修改您想要的任何内容!
这是相关的文档。
要将新字段添加到现有模型,请运行如下迁移:
# migration
class AddSubscribableFieldToVariants < ActiveRecord::Migration
def change
add_column :spree_variants, :subscribable, :boolean, default: false
end
end
然后在模型中添加以下内容:
# spree/variants_decorator.rb
Spree::Variant.class_eval do
attr_accessible :subscribable
end