2
我有5类,是销售计划的一个点的一部分:
客户,技术员,订购,票务,服务为简单销售点程序的类创建Rails 3/Active Record关联的最佳方式是什么?
每个订单都有一个客户和许多门票。每张票都有技术员和许多服务。
我应该怎么做关联,这样我可以做以下查询:
customer.order.find_by_date(10/20/2010).service.technician.name
这是我计划:
class Customer < ActiveRecord::Base
has_many :orders
has_many :tickets, :through => :orders
has_many :technicians, :through => :tickets
end
class Technician < ActiveRecord::Base
belongs_to :ticket
belongs_to :service
end
class Service < ActiveRecord::Base
has_many :technicians
belongs_to :ticket
end
class Ticket < ActiveRecord::Base
has_many :services
has_many :technicians, :through => :services
end
class Order < ActiveRecord::Base
has_many :tickets
has_many :services, :through => tickets
has_many :technicians, :through => services
belongs_to :customer
end
使用您当前的布局,您将无法将查找作为has_many技术人员的服务。这应该是一个技术人员,还是有可能让多个技术人员在一个服务上工作? – Maran 2010-10-21 10:53:14
多位技术人员可以执行相同的服务;但是,每张票只有一名技术人员执行一项或多项服务。 – 2010-10-21 11:47:33