使用has_many通过关系分配属性

时间:2012-08-14 13:38:52

标签: ruby-on-rails ruby ruby-on-rails-3 activerecord

我只是想知道是否有人可以向我解释如何创建一个关系(程序化示例会有用,所以我可以在rails控制台中测试)两个对象之间的关系定义为has_many:通过具有额外的属性。对象定义如下:

class Item < ActiveRecord::Base
  has_many :collections, :through => :collection_items
end

class Collection < ActiveRecord::Base
  has_many :items, :through => :collection_items
end

class CollectionItem < ActiveRecord::Base
  belongs_to :collection
  belongs_to :item

  attr_accessible :collection_id, :item_id, :quantity
end

1 个答案:

答案 0 :(得分:1)

试试这个:

CollectionItem.create(item_id: Item.first, collection_id: Collection.first, quantity: 999)

只需用您拥有的任何逻辑替换“Item.first”和“Collection.first”即可获得正确的项目和集合。