-2
我读过的评论系统的最佳解决方案是Managing Hierarchical Data in MySQL如何实现的评论系统,只有1深度级别
不过,我计划让答复只为顶评论 - 只有一个深度级别。在这种情况下,结构变得比复杂树更简单。
在这种情况下是否有其他方式来实现它?更简单,更简单,更快捷?
我读过的评论系统的最佳解决方案是Managing Hierarchical Data in MySQL如何实现的评论系统,只有1深度级别
不过,我计划让答复只为顶评论 - 只有一个深度级别。在这种情况下,结构变得比复杂树更简单。
在这种情况下是否有其他方式来实现它?更简单,更简单,更快捷?
1级的实现与N级的实现相同。
唯一的区别是你只使用1级。
一个可能的实现如下所示:将所有注释放在一个表中,并在博客文章中使用外键或任何您评论的内容。嵌套存储在ParentCommentId中。如果它是NULL,那么它是一个根注释,如果它是一个值,如果是对另一个注释的注释。
然后制作简单的评论表单并将结果存储在数据库中非常简单。
表结构可能看起来像这样:
CREATE TABLE `Comments` (
`CommentId` int(11) NOT NULL AUTO_INCREMENT,
`BlogId` int(11) NOT NULL,
`ParentCommentId` int(11),
`Content` text NOT NULL,
`Name` varchar(64) NOT NULL DEFAULT '',
`EMail` varchar(64) DEFAULT NULL,
`Url` varchar(64) DEFAULT NULL,
`IP` varchar(20) NOT NULL DEFAULT '',
`Created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`Modified` datetime DEFAULT NULL,
PRIMARY KEY (`CommentId`),
KEY `FK_Blog` (`BlogId`),
CONSTRAINT `FK_CommentBlog` FOREIGN KEY (`BlogId`) REFERENCES `Blogs` (`BlogId`),
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
也许我不够明确;)我想知道我应该如何实现一个REPLAY功能。例如:有评论A,B,C,D,其中A和C是最高评论和B&D评论重播A –
Ahh ..抱歉误导您的帖子。我调整了我的答案。 – JvdBerg
您的解决方案很难从数据库 –