ブログを作っているとしましょう。通常、モデルは次のようになります。
class User
has_many :posts
end
class Post
belongs_to :user
end
それらのスキーマは次のようになります。
User
id
Post
id
user_id
しかし今では、ユーザーは Facebook/Twitter/etc からログインできるので、投稿を User オブジェクトではなく、プロバイダーとプロバイダーの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の方法は何ですか?