В моем приложении rails Компания действует как пользовательская модель . компания может иметь много клиентов и сотрудников (продавец).
Существует множество отношений между продавцом и клиент .
Существует следующая проблема: мне часто приходилось получать все встречи, сделанные со всей компанией.Поскольку в модели алинии не сохранен company_id, это может быть довольно болезненным.
Должен ли я просто включить в назначения внешний ключ к компании и иметь некоторую форму избыточности или есть другой простой и эффективный способ?
class Company < ActiveRecord::Base
has_many :customers
has_many :carseller
end
class Customer < ActiveRecord::Base
belongs_to :company
has_many :appointments
has_many :carsellers, :through => :appointments
end
class Carseller < ActiveRecord::Base
belongs_to :company
has_many :appointments
has_many :customers, :through => :appointments
end
class Appointment < ActiveRecord::Base
belongs_to :customer
belongs_to :carseller
end