Rails 社交链接模型

Rails Social Links Model

我想存储用户的社交资料链接:facebook、youtube、instagram 等。是否有 gem 已经设置了此模型,或者我应该创建自己的?

如果我必须创建自己的,我会创建一个多态的 model/migration 并在用户、企业、事件等之间重复使用可共享的链接。由于这些链接通常很小,每一列都是字符串数据类型。

根据您要存储的信息量,您可以将这些列直接添加到用户模型(例如 "facebook_url"、"twitter_url")。但如果它更复杂,您可以创建另一个模型并建立关系。

类似于:

rails g model SocialNetwork name:string

然后 table 用于用户和社交网络之间的 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

希望对您有所帮助,祝您好运!