0

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

这就是我想要的:当一项活动正在进行时。可以将多个客户端分配给该活动。因此创建对@oneActivity.clientsor的访问@oneClient.activities

我应该在我的活动迁移中提出一个references :client还是相反?两者中的哪一个应该belongs_to在模型中,哪一个has_many

4

3 回答 3

1

好吧,如果一个客户有很多活动并且一个活动有很多客户,那么我建议你看看 has_and_belongs_to_many 关系。在这种情况下

在您的客户模型中,您将拥有

has_and_belongs_to_many :activities

在您的活动模型中,您将拥有

has_and_belongs_to_many :clients

这样你就可以做你在问题中描述的动作

您可以在此处查看 Rails 指南中的关系:http: //guides.rubyonrails.org/association_basics.html#the-has-and-belongs-to-many-association

于 2013-10-28T16:20:29.517 回答
0

在您的客户模型中,您将拥有

has_and_belongs_to_many :activities

在您的活动模型中,您将拥有

has_and_belongs_to_may :clients
于 2013-10-28T16:23:10.507 回答
0

我想,根据你的描述,你需要一个多对多的关系。客户可以有许多活动,正如您所描述的,活动可以分配给多个客户。

以下问题描述了如何在 Rails 中使用“has_many :through”关系?

于 2013-10-28T16:20:25.233 回答