0
我想存儲用戶的社交個人資料鏈接:臉譜,YouTube,Instagram等等。是否有已經設置此模型的寶石,還是應該創建自己的?Rails社交鏈接模型
如果我必須自己創建,我會創建一個多態模型/遷移並重新使用用戶,企業,事件等之間的可共享鏈接。由於這些鏈接通常很小,因此每一列都是字符串數據類型。
我想存儲用戶的社交個人資料鏈接:臉譜,YouTube,Instagram等等。是否有已經設置此模型的寶石,還是應該創建自己的?Rails社交鏈接模型
如果我必須自己創建,我會創建一個多態模型/遷移並重新使用用戶,企業,事件等之間的可共享鏈接。由於這些鏈接通常很小,因此每一列都是字符串數據類型。
取決於您要存儲多少信息,例如,可以將這些列直接添加到用戶模型(如「facebook_url」,「twitter_url」)中。但如果它更復雜一些,你可以創建另一個模型並進行關係。
類似:
rails g model SocialNetwork name:string
那麼對於用戶和社交網絡之間的N×N的關係的表:
rails g model UserSocialNetwork user:references social_network:references profile_url:string
的任何信息你可能需要。然後,在你的User.rb
:
has_many :user_social_networks
has_many :social_networks, through: :user_social_networks
,並在您SocialNetwork.rb
:
has_many :user_social_networks
has_many :users, through: :user_social_networks
希望這會有所幫助,祝你好運!
我想我會堅持多態關係,但我很欣賞看到你對此事的看法。很高興知道沒有這樣做的網絡傳播標準化方式(通過寶石)。 –