我正在使用三種模型:用戶,項目和用戶權限。 userprivilege模型由user_id,project_id和accessLevel值組成。用戶和項目模型與用戶權限具有'has_many'關係,並且具有'has_many,through'關係。Rails 3,通過中間頁面獲取對象的ID
當用戶創建項目時,會在userprivileges表中創建相應的條目。我不確定如何爲用戶與其他用戶共享項目的情況創建這樣的條目。在這種情況下,用戶訪問項目頁面,單擊鏈接以共享對項目的訪問權限,並指定目標用戶的電子郵件。
我將這種情況與UserprivilegesController中的'new'操作關聯起來。在「創建」操作中,我可以訪問共享項目的用戶對象(使用電子郵件ID),但我不確定如何獲取共享項目的項目ID。有沒有辦法在用戶訪問項目頁面並點擊共享訪問鏈接時存儲項目ID?
謝謝。
感謝Aldo的評論,我能解決這個問題。但是,我有一個相關的問題:是否可以使用routes.rb文件來解決這個問題。我可以在項目路線中包含UserPrivilege操作的路線嗎?作爲例子,如:/ projects/1/userprivileges/new或/ projects/1/userprivileges/1/edit。然後,我可以從URI獲取項目ID。但是,限制是必要的,這樣userprivileges纔可以從它們相關的項目中訪問,所以像/ projects/2/userprivileges/1/edit這樣的東西是不允許的。我怎麼能實現這個限制?
謝謝你,工作。我想知道是否有可能以另一種方式使用routes.rb文件解決這個問題。我可以在項目路線中包含UserPrivilege操作的路線嗎?作爲例子,如:/ projects/1/userprivileges/new或/ projects/1/userprivileges/1/edit。然後,我可以從URI獲取項目ID。但是,限制是必要的,這樣userprivileges纔可以從它們相關的項目中訪問,所以像/ projects/2/userprivileges/1/edit這樣的東西是不允許的。 – user1415505
如果解決了您的問題,請考慮接受答案。 對於其他問題是很多東西。 1)關於路由,請閱讀Rails路由指南(http://guides.rubyonrails.org/routing.html)。 2)對於*授權*,我建議你看看我們心愛的英雄Ryan Bates(RailsCasts)的CanCan gem(http://railscasts.com/episodes/192)。 –