所以我有一個Vendor
和User
。用戶可以具有多種角色之一:superadmin
,admin
,vendor
,user
。如何設置一種類型的用戶和模型之間的關係?
我的Vendor
模型本質上是一個「商店」。
我希望角色爲vendor
的用戶擁有模型Vendor
的實例。但並非所有用戶都擁有Vendor
型號的實例。
在我Vendor
模型中,我有這樣的:
belongs_to :owner, :class_name => "User",
:foreign_key => "user_id"
但我不知道做什麼用的User
模型,因爲不是每個User
都會有一個或有很多供應商。
我該如何解決這個問題?
我正在使用CanCan。但這是我有點不確定的協會。如果我做'has_many:vendors',那麼當用戶沒有分配'vendor'的時候會有什麼問題嗎? – marcamillion
marcamillion,那太棒了,CanCan是一顆偉大的寶石。使用'has_many'關係應該沒有問題,即使關係在那裏用戶不需要有'vendor',它只意味着用戶有能力擁有'vendor'。這就是爲什麼您必須使用您在CanCan中建立的角色來控制訪問。希望這可以幫助! –