【问题标题】:What's the best way to structure these relationships? To HABTM or not?构建这些关系的最佳方式是什么?是否使用HABTM?
【发布时间】:2011-04-25 06:34:43
【问题描述】:

只是在寻找一些关于如何在我正在制作的应用中构建关系的建议。我有以下型号:

activity # golf, karaoke
event    # golf competition followed by all-night karaoke boat party
post     # write-up of the golf and karaoke event mentioned above
gallery  # photos from the golf and karaoke event

问题 1

  • 每个事件可以涉及多个活动
  • 每个活动可以与多个事件相关联

在活动和事件之间我需要一个habtm吗?


问题 2

  • 每个事件都可以在多篇博文中报告
  • 帖子可以报告多个事件

我应该在活动和帖子之间使用 habtm 吗?


问题 3

  • 每个帖子可以包含来自多个画廊的图片
  • 图库可以包含在多个帖子中

这是另一个habtm吗?


问题 4 - 可以想象,管理员可能希望将 1 组或多组照片与 1 个或多个事件相关联,而无需创建博客文章将所有内容联系在一起。在画廊和活动之间声明 habtm 关系是否可取?


奖励积分: 具有这么多 habtm 的应用程序是否可能比在相同模型之间强制执行一对多关系的应用程序慢?在应用变得过于复杂之前,是否有建议限制应用所拥有的 habtm 关系数量?

提前致谢

【问题讨论】:

    标签: ruby-on-rails data-modeling has-and-belongs-to-many


    【解决方案1】:

    所有情况都需要 habtm。它遵循您的规范。你只能想知道你是否真的需要这样的关系。看看http://en.wikipedia.org/wiki/You_ain%27t_gonna_need_it“YAGNI”。 我也不会在开发过程中考虑速度。当您的应用运行缓慢时,请添加缓存。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-18
      • 2010-10-09
      • 2022-01-19
      • 1970-01-01
      • 2010-12-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多