У меня есть следующие модели:
class Aircon < ActiveRecord::Base
belongs_to :shop
belongs_to :brand
belongs_to :power
accepts_nested_attributes_for :shop, :brand, :power
end
class Shop < ActiveRecord::Base
has_many :aircons
has_many :brands, :through => :aircons
has_many :powers, :through => :aircons
end
class Brand < ActiveRecord::Base
has_many :aircons
has_many :shops, :through => :aircons
has_many :powers, :through => :aircons
end
class Power < ActiveRecord::Base
has_many :aircons
has_many :shops, :through => :aircons
has_many :brands, :through => :aircons
end
Вопрос 1
Как видите, между двумя моделями существует соответствующая связь. Вообще, я думаю, это неплохая идея, если это имеет смысл. Что ты думаешь?
Вопрос 2
Теперь я хочу добавить другую модель Model
и установить следующие ассоциации:
class Model < ActiveRecord::Base
belongs_to :brand
end
class Brand < ActiveRecord::Base
...
has_many :models
end
Какая была бы подходящая связь между Model
и Aircon
?
Вопрос 3
Определите ли вы ассоциации между:
Model
и Shop
Model
и Power
Если да, то какой тип ассоциации?