我想存储用户的社交个人资料链接:facebook,youtube,instagram等。是否有宝石已经设置过此模型,或者我应该创建自己的宝石?
如果我必须自己创建我创建一个多态模型/迁移并重新使用跨用户,企业,事件等的可共享链接。由于这些链接通常很小,每列都是一个字符串数据类型。
答案 0 :(得分:1)
根据您要存储的信息量,您可以将这些列直接添加到用户模型中(例如" facebook_url"," twitter_url"),例如。但如果它更复杂,你可以创建另一个模型并建立关系。
类似的东西:
rails g model SocialNetwork name:string
然后是用户和社交网络之间的nxn关系表:
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
希望这有帮助,祝你好运!