django - 正确/更好地实现 Django 中的“Like”模型
问题描述
我目前正在开展一个项目,该项目需要在帖子(由用户提交)上实现一个典型的“喜欢”按钮。
考虑到性能、完整性等各个方面,以下两种实现中的哪一种是更好的选择?
class Post(models.Model):
.
.
likes = models.ManyToManyField(User, blank = True)
.
.
或者,
class Like(models.Model):
user = models.ForeignKey(User, on_delete = models.CASCADE)
#considering we have a Post model without the above ManyToMany relation
post = models.ForeignKey(Post, on_delete = models.CASCADE)
.
.
解决方案
推荐阅读
- docker - HTTP 请求在邮递员中工作,但不适用于 docker 容器中的 axios
- sql - 将数组列转换为 Presto 中的 K、V 对表
- database - 在 GridDB 中,可以反转索引/行键/搜索吗?
- javascript - 将道具传递给 ReferenceArrayField 似乎不起作用
- java - 黑客等级 Java 字符串令牌
- docker - Gitlab CI/CD 到 Digital Ocean 使用 docker-compose 进行多个 repos
- reactjs - 存在返回时,反应中的导出模块不允许我导入
- python - 如何分隔 .txt 文件的列?.txt 到 .csv 熊猫脚本将所有列合二为一?
- reactjs - 带有 microbundle-crl 的 React Typescript 不会为除主文件以外的文件创建 js 文件
- excel - 将具有不同标题的多列堆叠成两列?