我正在使用Sequel建立一个心愿单系统.我有一个wishlists和items表和一个items_wishlists连接表(这个名字是续集选择的).该items_wishlists表还有一个额外的列id for facebook id(所以我可以存储opengraph动作),这是一个NOT NULL列.
我也有Wishlist和Item续集many_to_many关联设置的模型.该Wishlist班也有:select在MANY_TO_MANY协会设置的选项select: [:items.*, :items_wishlists__facebook_action_id].
有没有一种方法可以在创建关联时添加额外的数据,比如wishlist.add_item my_item, facebook_action_id: 'xxxx'什么?我创建关联后无法执行此操作,因为facebook id在列上具有NOT NULL.
谢谢你的帮助
建议的方法是为连接表添加模型.但是,如果您不想这样做,您可以:
class Wishlist
def _add_item(item, hash={})
model.db[:items_wishlists].insert(hash.merge(:item_id=>item.id, :wishlist_id=>id))
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1572 次 |
| 最近记录: |