【发布时间】:2023-03-19 21:25:01
【问题描述】:
假设我们正在创建一个博客。通常,模型如下所示:
class User
has_many :posts
end
class Post
belongs_to :user
end
他们的架构看起来像:
User
id
Post
id
user_id
但是现在,用户可以通过 Facebook/Twitter/etc 登录,我们希望帖子不属于 User 对象,而是属于 provider 和 的组合提供者的 uid。
新架构如下所示:
User
id
provider
uid
Post
id
user_provider
user_uid
而且我不确定模型会是什么样子:
class User
has_many :posts, :foreign_key => ['user_provider', 'user_uid'] # Is this right??
end
class Post
belongs_to :user, :class_name => User # Again, this is a guess...
end
我在正确的轨道上吗? Rails 的做法是什么?
【问题讨论】:
标签: ruby-on-rails activerecord