我一直在考虑为我的网站设计一个喜欢的系统,我无法确定最好的方法.我正在使用MySQL,现在,我有一个活动表,用于文本,图片,视频等的帖子,以及评论表.您可以同时阅读评论和活动帖子,那么我应该如何处理相似表格的列?我愿意接受改变整个架构的建议,以实现更加连贯的设计.
最佳答案
只需使用如下结构创建一个名为likes的表:
`id` int(11) NOT NULL AUTO_INCREMENT,`userid` int(11) NOT NULL,`post_type` varchar(10) NOT NULL,`post_id` int(11) NOT NULL,`date` datetime NOT NULL,PRIMARY KEY (`id`)
然后,每当有人喜欢活动帖子时,你会插入该用户的ID,post_type作为活动,然后post_id将是帖子ID(显然).
然后获取活动帖子的喜欢:
SELECT * FROM `likes` WHERE post_id = 'id' AND post_type = 'activity'
你只需要用ID变量替换’id’.
注释也是一样(除了你需要更改post_type).
我希望这可以帮助您了解如何为您的网站制作类似的系统:)