不确定这是什么最好的实现。我有两种不同类型的财产,我想追踪故障。我希望能够在特定属性的显示页面上显示故障,然后查看故障索引页面上的所有故障。关系数据库实现
对于每个属性有多个故障表或每个属性链接到哪个故障表会更好吗?如果全部放在一起,我担心故障表中有多个空白id属性。但是如果他们分开了,我担心在视图中显示它们。我用rails来实现这个。
一个故障表
Cars Trucks Faults
----------- ---------- -----------
car_id truck_id fault_id
attribute_1 attribute_1 car_id
truck_id
fault description
两个故障表中(每个属性之一)
Cars Trucks car_Faults truck_faults
----------- ---------- ----------- -----------------
car_id truck_id car_fault_id truck_fault_id
attribute_1 attribute_1 car_id truck_id
fault description fault description
没有机会玩它,但它看起来像多态性工作。我假设您可以将关联添加到超过2个模型,方法是将所有需要关联的表添加为as => faultable?以上表格是使用 – 2013-04-25 12:14:59
正确的实际模型Im的简化表示。只要它们都使用':as =>:faultable'接口,就可以在多态关联中使用尽可能多的模型。 – Substantial 2013-04-26 01:50:24
我可以让你检查这个设计实现,看看它是否有意义/作品?我试图确保从一开始就正确设置了这一设置,而不是构建糟糕的设计,并遇到访问数据时出现问题的问题。 – 2013-04-26 22:39:18