0

A 'userhas manypostsおよび a producthas manypostsであり、与えられたものは aまたは a のpostいずれかに属することができますが、両方に属することはできません。userproduct

テーブルにhas_many :through保存され、次のように書かれた関係だと思います:posts_relationships

Class User < ActiveRecord::Base
has_many :posts, :through => posts_relationships

Class Product < ActiveRecord::Base
has_many :posts, :through => posts_relationships

私が必要とするものを表現します。 それはそれを行うための正しくて最も簡単な方法ですか? 複雑な関係ではないので、できるだけ簡単に書きたいと思います。

4

1 に答える 1

2

多形関連を検討してください。

Class User < ActiveRecord::Base
  has_many :posts, :as=>:postings
end

Class Product < ActiveRecord::Base
  has_many :posts, :as=>:postings
end

class Post
  belongs_to :posting, :polymorphic=> :true
end
于 2012-03-17T01:04:13.407 に答える