使用belongs_to和has_many很难

时间:2013-10-28 16:14:43

标签: ruby-on-rails ruby-on-rails-4 associations

我对构造感到困惑,并尝试了几种方法来使我的测试有以下情况。但我无法让它发挥作用。

这就是我想要的: 在进行活动时。可以将多个客户端分配给该活动。因此,请创建对@oneActivity.clients@oneClient.activities

的访问权限

我应该在我的活动迁移中提出references :client还是反过来?哪两个应该在模型中belongs_tohas_many

3 个答案:

答案 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