1

我正在做一个小项目,用户将文章提交到 MySQL,然后 PHP 将帖子发送到屏幕。到目前为止,一切都很好。现在我想将其扩展到“两级”帖子系统,人们可以在其中评论文章。情况是,我不知道该怎么做。

我用来存储文章的表:

表:帖子

ID用户日期头像签名帖子

我应该在帖子表中创建一个名为评论的新行,还是应该将评论放在单独的表中?一篇文章,一篇评论?

非常感谢所有帮助。

4

2 回答 2

2

取决于你如何在你的网站上使用它。你要问:“我的文章和评论本质上是同一个概念吗?” 如果是,则使用一张表,如果否,请使用两张。在大多数网站上,文章的工作方式不同,可以分类、编辑等,并且通常需要不同的字段,这会使评论表变得混乱......所以在这种情况下,两个表更合理。但是,如果您得出结论,在您的网站上的文章和评论通常是相同的(但尝试考虑未来的证据:您不需要在 2 个月内添加一些文章功能吗?)那么您也可以将文章视为评论并拥有给他们一张桌子。

如果您决定将内容合并到一个表中,并且您意识到您需要另一列来区分帖子的类型,并且某些列仍然未用于某些类型,那么这是一个明确的警告信号,您应该有两个表!

于 2012-03-23T20:24:36.023 回答
1

这有点主观,但我只是在您的帖子表上设置父/子关系,创建一个 parent_id 列,它是同一个表中 id 列的外键。为了获得额外的功劳,您可以将其设置为嵌套的集合关系,这将允许您在一个查询中拉取父级和所有子级

于 2012-03-23T20:06:31.713 回答