【问题标题】:nested set comments question嵌套集评论问题
【发布时间】:2011-07-12 16:43:29
【问题描述】:

我对嵌套集相当陌生,尽管我之前曾使用它们来创建存储结构。我现在想将嵌套集用于评论系统,但我无法理解它,而且这样的例子很少。

该网站基本上是一个博客,我希望允许人们对帖子发表评论并回复其他 cmets。

这是我的问题:

每个评论都是一个节点吗? 如果是这样,我是否每次创建新帖子时都创建一个根节点并将 cmets 作为子节点添加到根节点?

这是我看到这个工作的唯一方法,但我并不热衷于为每个发给我的帖子创建一个根节点,cmets 表应该保持不变,直到做出第一个实际评论?

谁能给我解释一下?

【问题讨论】:

    标签: mysql comments nested-sets


    【解决方案1】:

    如果您希望能够轻松检索整个层次结构,则使用嵌套集。在您的情况下,每个评论都会有 post_id(可能会有 in_reply_to - 如果您允许 hiearical cmets),并且不需要嵌套集,因为您将通过 post_id 获得所有 cmets。如果您希望每个帖子有很多 cmets,您可以使用 cmets 的嵌套集,并且您将有很多根节点(每个 1 级评论一个 - 不是回复评论的评论,而是直接上帖子)。我看不出有很多根节点有什么问题,而且我不明白你关于“在第一个实际评论之前应该保持表格不变”的考虑?

    【讨论】:

    • 感谢您的回复。这是有道理的,我在想根节点将包含 post_id 并且帖子上的所有 cmets 都将是根的子节点。但是每个评论都带有 post_Id 更有意义。我让它变得比它需要的更复杂。再次感谢您的帮助。
    猜你喜欢
    • 2021-09-09
    • 2012-09-17
    • 2014-08-28
    • 1970-01-01
    • 1970-01-01
    • 2015-09-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-18
    相关资源
    最近更新 更多