2013-04-13 33 views
0

雖然我嘗試創建一個項目,但在嘗試一些研究後發現使用Devise,cancan和角色模型我沒有太多的運氣,真的很感謝一些幫助或指導,在哪裏我可以去做到這一點!Ruby允許用戶創建帖子,該帖子僅允許其他某些選定的用戶編輯某些部分

基本上我試圖創建一個允許運動教練/運動員註冊的網站,然後教練可以設置一個不同的每週計劃,其中運動員每天將填寫,只在某些選定的區域,但仍然可以veiw教練寫的是什麼。然後教練可以打印出報告,一旦運動員填補了這一週的報告

我已經安裝了設計,cancan和角色模型,並得到了使用此http://www.phase2technology.com/blog/authentication-permissions-and-roles-in-rails-with-devise-cancan-and-role-model/設置的基本知識,但即時通訊努力瞭解如何我可以將運動員簽名爲「運動員」,並作爲「教練」進行教練,即使只允許教練選擇某些運動員(他們的運動員)來分配訓練計劃。

謝謝你的幫助將不勝感激!

回答

0

我會使用基於其他的模型,比方說用戶模型,Devise混入其中。然後,您可以創建從用戶繼承的運動員和教練模型。

在視圖中,您只需添加新的註冊字段(例如單選按鈕以在這兩個模型之間進行選擇)。這需要稍微改變Devise的基本約定,但會爲您節省大量時間分開實施2個設計模型。

+0

謝謝康拉德,會放棄它!創造一個新的設計模型是'rails g模型教練'? – user2278385

+1

您也可以創建一個「組」模型,並將具有「教練」和「運動員」值的教練分配給組,其值爲「運動員」。這很容易,然後限制基於組appartenance訪問(如果用戶是組教練的成員,那麼他有能力做ABC,如果用戶是組運動員的成員,他有能力做DEF),並且你可以改進組內的角色。 .. – phron

+0

phron - 如果我們計劃在未來創建更多團體,這是一個好主意。在其他情況下,我們甚至可以使用名爲「type」的列,並在其中放置「運動員」或「教練」。但這只不過是STI。 – konole

相關問題