【发布时间】:2017-05-25 16:55:52
【问题描述】:
所以我有一些复杂的模型关联设置,我似乎无法完全正确。
我有:
Owners Doors
Clients -> Orders -> < | /
Property - Windows
\
Heating/Cooling
所以思考的过程是每个物业可以有许多门、窗、供暖/制冷系统和业主,每个业主可以有很多属性。
当提交订单时仅包含所有者和物业信息(地址等),我们会查找有多少物业拥有的门、窗、供暖/制冷系统,更新订单,然后将其发送回客户。
现在我已经设置好了我的模型,(为了节省空间,在这里压缩)
Clients has_many :orders
Order -> belongs_to :property, :clients
Order -> has_many :doors, :windows, :heating/cooling, through: :property
Property -> has_many :doors, :windows, :heating/cooling, :owners
Doors, Windows, Heating/Cooling, Owners -> belongs_to :property
所以我的问题是我希望能够知道哪些门、窗和加热/冷却是按哪个顺序拉动的。所以我会说它们应该属于订单但是如果多个订单进入同一个属性,我不希望我的数据库中的这些模型的相同信息多次用于所述属性,只是因为它们进入不同的订单,同样希望能够查找属性本身并查看所有相关的订单、门、窗、供暖/制冷。
我希望我的解释很清楚,因为我对 Rails 以及关联的工作方式及其功能还很陌生,因此任何见解都会非常有帮助,提前致谢。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-5 models model-associations