【发布时间】:2016-04-21 17:27:37
【问题描述】:
我正在开发一个社交媒体类型的网站。我已经开始了初步设计并遇到了潜在的问题。该站点围绕组件,子组件和子子组件。它具有层次结构。我最初为组件创建了一个表,为子组件创建了一个表,为子子组件创建了一个表。这些表由 id 链接。我相信,对于大多数事情来说,这会很好。但是……
我希望用户能够“喜欢”或“关注”某些组件、子组件和子子组件。我在想我必须创建一个“喜欢”表或“交互”表。我没有要链接的单个 ID。如果用户想要一个子子组件,我必须列出 component_id、sub-component_id 和 sub-sub-component_id。这似乎很痛苦。
那么为什么没有 1 个元素表或只有组件。 Sub-component1 和 sub-component2 是 Component1 的子级。 sub-sub-component1 是 sub-component2 等的子组件。
在此过程中,无论组件是子组件还是子子组件,我都可以创建唯一的 component_id,并且我可以在我的 likes 表中应用这些 id。
这似乎是一个更有效的过程?我已经使用 parent_ids 等创建了单个表,现在在查询该表以生成数据时遇到了问题。如何显示组件、组件的子组件(作为子组件)和子组件的子组件(作为子子组件)?
我希望这能让您了解我在寻找什么。如果您需要更多信息,请告诉我。
【问题讨论】:
标签: database-design social-networking