2011-09-11 66 views
0

在我的Rails應用程序中,每個用戶都可以創建許多比賽,每場比賽都可以有許多用戶參加比賽。我想知道是否使用has_and_belongs_to_many是合適的,因爲有些用戶不會創建比賽,但會參加比賽?這裏has_and_belongs_to_many是否有適當的關聯?

是否有其他方法可以更好地使用?

+0

不管一個實體是否*創造*另一個實體並不真正相關;這是描述的關係,而不是創作過程。 –

回答

0

爲了您的情況,您將需要一個參考用戶和競爭表(user_id和competition_id)的表格。

如果您想要在用戶和競爭對手之間的每個關聯中都有一些屬性(例如,針對不同用戶的同一競爭對象具有不同的規則或屬性),那麼您將不得不創建一個單獨的模型(用戶和競爭對手之間的每個關聯都將是該模型的實例),你將需要使用has_many:通過別的has_and_belongs_to_many是好的。

相關問題