0
私は以下のモデルを持っています。私は人と家に特有の細部を保存する必要があります(first_viewed:日付、オープニングオファー:小数点など)。私はこれらがPersonHouseモデルに属するべきだと思っていますが、私は十分ではありません。助言がありますか?activerecord/db theory - これらのフィールドはどこに置くのですか?
class Person < ActiveRecord::Base
has_many :houses, through: :person_houses
has_one :favorite_house, through: :person_houses
end
class PersonHouse < ActiveRecord::Base
belongs_to :house
belongs_to :person
end
class House < ActiveRecord::Base
has_many :house_people
has_many :people, through: :person_houses
end
すべての詳細を取得するためにこれを行うことができますが、おそらくより効果的な方法があります。
@house = House.find(1)
@house.house_people.each do |hp|
puts hp.person.name
puts hp.first_viewed
puts @house.address
end
も、あまりにも仕事とPersonHouseDetailまたはPersonHouseDetailLink –
のようなものを。モデルの目的をより明示的にするだけで、あなたにとって理にかなったものになります。 –