Rails ActiveRecord :: HasManyThroughAssociationNotFoundError

时间:2016-03-23 00:10:04

标签: ruby-on-rails activerecord many-to-many has-many-through jointable

发生此错误时,我一直在我的rails应用中设置购物车模型。这些关联应该是用户可以拥有一个购物车,一个购物车属于一个用户并且可以拥有许多零件(商品)。由于多个用户可以拥有一个购物车,因此零件和购物车之间存在多对多的关系。我创建了一个名为CartsParts的连接表,它有一个cart_id和一个part_id。

继承我的部分模型

class Part < ActiveRecord::Base
  has_many :order_items
  has_many :carts, through: :carts_parts
  belongs_to :category

购物车型号

class Cart < ActiveRecord::Base
  has_many :order_items
  belongs_to :user
  has_many :parts, through: :carts_parts
end

我的加入表CartsParts

class CreateCartsParts < ActiveRecord::Migration
  def change
    create_join_table :carts, :parts do |t|
      t.index [:cart_id, :part_id]
      t.index [:part_id, :cart_id]
    end
  end
end

我收到错误声明&#34;无法找到关联:carts_parts在模型Cart&#34;,即使我设置了has_many通过关系。我不完全确定我在这里做错了什么。

0 个答案:

没有答案