0

重複の可能性:
HABTM多型関係

現在、関係のモデルを定義し、関係モデルを介してhas_many関係を設定することにより、多対多の関係を実装しています。このようなもの:

class WorldCup < ActiveRecord::Base
  has_many :country_taggings#, :as => :entity
  has_many :countries, :through => :country_taggings
end

class Country < ActiveRecord::Base
  has_many :country_taggings
end

class CountryTaggings < ActiveRecord::Base
   belongs_to :country
   belongs_to :world_cup
   # belongs_to :entity, :polymorphic => true
end

もちろん、これは、私がコメントしたものがなければ、has_and_belongs_to_manyに簡単に翻訳できます。したがって、親から関係モデルへの関係は多形です。中間関係モデルを実際に定義することの冗長性は私を殺しています。has_and_belongs_to_manyに戻り、どういうわけかそれを多形化する方法を見つける方法はありませんか?

4

2 に答える 2

0
class WorldCup < ActiveRecord::Base

  has_many :country_taggings

 has_many :countries, :through => :country_taggings

end

class Country &lt; ActiveRecord::Base
  has_many :country_taggings
end

class CountryTaggings < ActiveRecord::Base
  belongs_to :entity, :polymorphic => true

 belongs_to :country

 belongs_to :world_cup

end
于 2012-10-12T11:06:43.733 に答える
0

これを試して -

http://ruby-on-rails-dipak-panchal.blogspot.in/2012/10/has-many-through-relationship.html

class WorldCup < ActiveRecord::Base
  has_many :country_taggings
  has_many :countries, :through => :country_taggings
end

class Country < ActiveRecord::Base
  has_many :country_taggings
  has_many :worldcups, :through => :country_taggings
end

class CountryTaggings < ActiveRecord::Base
  belongs_to :country
  belongs_to :world_cup
end

そしてこれも見てください

http://guides.rubyonrails.org/association_basics.html#the-has_many-through-association

于 2012-10-12T07:50:00.903 に答える