【发布时间】:2013-05-25 20:57:19
【问题描述】:
我一直在阅读 Rails 协会指南,但我仍然不确定我是否正确地这样做。
我的应用有用户和产品。
用户可以为这些产品贡献 cmets、评论和照片。
我想我会创建一个名为 Contributions 的连接模型:
belongs_to :user
belongs_to :building
belongs_to :contributable, polymorphic: true
然后对于用户:
has_many :contributions, as: contributable
has_many :products, through: contributions
产品:
has_many :contributions, as: contributable
has_many :users, through: contributions
然后,例如,在我的 Review 模型中:
belongs_to :user
belongs_to :product
我觉得我做的不对。基本上,我希望贡献始终具有关联的产品和用户,但希望贡献能够包括评论、评论或照片。
具有多态关联的连接表是正确的方法吗?
【问题讨论】:
标签: ruby-on-rails