2010-11-21 155 views
0

這是家庭作業,就這樣提到。Ruby on Rails的關係

我有一個名爲AdventCalendar的項目,它應該是一個出現日曆(顯然)。 我已經可以登錄/註銷或創建新用戶。一旦你登錄,你可以創建日曆(降臨日曆)。每個日曆都有很多天,每天都屬於一個日曆。另外,用戶可以創建許多日曆。

所以,我想要的是讓用戶可以與其他用戶分享他們的日曆,如果他們想。我有點卡住,不知道該從哪裏出發。我想,也許到

has_and_belongs_to_many :users 

添加到日曆,同樣:

has_and_belongs_to_many :calendars 

用戶..

我只是不知道如何實現它。 任何提示,或幫助,高度讚賞!

在此先感謝。

回答

2

是的,你說得對。雖然我認爲它稍微不復雜。日曆不必擁有很多用戶。只有具有日曆的用戶才能分級關係。然後,對於日曆,創建一個多態連接表以允許日曆有許多用戶關聯。

#user.rb 

has_many :calendars 


#calendar.rb 

belongs_to :many_users, :polymorphic => true 
has_many :users, :as => :many_users 

您的日曆表應該有一個many_users_iduser_id場。