【发布时间】:2013-04-17 20:41:54
【问题描述】:
所以我正在尝试创建一个简单的事件 Web 应用程序,其中类 User 可以创建类 Event 并参与其中。在用户类创建一个类事件的情况下,我希望该事件属于用户。但是,如果同一用户注册参加另一个活动,我希望该用户属于该活动,并且该活动属于拥有多个用户。不过,我不知道这实际上是如何写在模型中的。
在一种情况下,用户类是属于事件的参与者,而在另一种情况下,他们是主持人,事件属于他们。如果我没有的话,我不想保持这种干燥并且不创建单独的用户类别(在这种情况下是主机和参与者)。一个简单的联合表似乎并不能解释这种条件关联。对最好的方法有什么建议吗?
类用户 ???
类事件 ????
谢谢!
【问题讨论】:
-
如果您了解foreign_keys,您就会明白为什么在这种情况下需要连接表。当您说用户属于一个事件时,您是说事件的 ID 在用户的 event_id 属性上,作为一个外键......这意味着用户一次只能属于一个事件,如果这是您的目的,那很好。 “干”并不意味着没有连接表......连接很有趣!
标签: ruby-on-rails activerecord associations has-many belongs-to