数据库建模最佳实践:处理同一个“基础”的关联]]

问题描述 投票:1回答:1

我试图规范化我的数据库模型。但在这种情况下,我一无所知。提供以下模型:

  • 客户有很多系统(has_many:systems)
  • 集群有很多系统(has_and_belongs_to_many:systems)
  • 我想显示客户的所有系统。那将是:@customer.systemobjects.each。已经在工作。

然后,我可以将系统添加到群集(我提到的是“ HABTM”关联)。在我的客户视图中,我只想显示与集群无关(也与Cluster.includes(:systems).where(systems: { id: sysid }).present?一起使用)的系统。

现在我的问题:我也想显示特定客户的所有群集(以及该群集的系统)。但是,现在,我只能通过系统与客户建立联系。对我来说,在集群对象中添加对客户的引用也更容易(即使我已经在系统中拥有此信息)。

我应该添加此参考文献吗?它是否与规范化有关?您将如何从最佳实践的角度评估一般数据库和特定于Ruby On Rails的情况?当我仅通过系统时,遍及客户的每个集群的最佳方式又将是什么(我如何在导轨中实现?)?

我试图规范化我的数据库模型。但在这种情况下,我一无所知。提供以下模型:客户有许多系统(has_many:systems)集群有许多系统(...

ruby-on-rails database model associations
1个回答
1
投票

我认为您更喜欢这样的东西:

© www.soinside.com 2019 - 2024. All rights reserved.