我对构造感到困惑,并尝试了几种方法来使我的测试有以下情况。但我无法让它发挥作用。
这就是我想要的:
在进行活动时。可以将多个客户端分配给该活动。因此,请创建对@oneActivity.clients
或@oneClient.activities
。
我应该在我的活动迁移中提出references :client
还是反过来?哪两个应该在模型中belongs_to
和has_many
?
答案 0 :(得分:1)
如果客户有很多活动且活动有很多客户,那么我建议你看看has_and_belongs_to_many relationship.in
在您的客户端模型中
has_and_belongs_to_many :activities
在您的活动模型中,您将拥有
has_and_belongs_to_many :clients
通过这种方式,您可以执行问题中描述的操作
您可以在此处查看导轨指南中的关系:http://guides.rubyonrails.org/association_basics.html#the-has-and-belongs-to-many-association
答案 1 :(得分:0)
我想,从你描述的内容来看,你需要一个多对多的关系。客户可以有许多活动,如您所述,活动可以分配给多个客户。
以下问题When should one use a "has_many :through" relation in Rails?
中描述了建立这种关系答案 2 :(得分:0)
在您的客户端模型中
has_and_belongs_to_many :activities
在您的活动模型中,您将拥有
has_and_belongs_to_may :clients