今天面试,聊到评论这块数据库是怎么设计的,当时我的想法是 “首先关联用户表,然后关联推文表,最后子评论这块卡住了。突然不知道怎么设计比较合理” 。 然后面试官给我提醒了哈 说“可以参考省市区的 三级联动”,我当时没想到 “Django 自关联”这块,最后只能认怂了。 在此记录哈这个问题!
对于评论来说,每条评论都可能有子评论,但每条评的字段内容应该都是相同的,并且每条评论都只有一个父评论,这就满足了,一对多的情形。
父评论为关联字段,可以对应多个子评论,这就是一对多的自关联。