假设有大量用户和大量视频,那么构建以下两个选项的数据库的更好方法是什么:
选项一 -
class UserProfile(models.Model)
user = models.ForeignKey(User, unique=True)
videos = models.ManyToManyField(Video, blank=True)
class Video(models.Model)
title = models.CharField(max_length=256)
file = models.FileField(...)
选项二 -
class UserProfile(models.Model)
user = models.ForeignKey(User, unique=True)
class Video(models.Model)
uploaded_by = models.ForeignKey(User)
title = models.CharField(max_length=256)
file = models.FileField(...)
答案 0 :(得分:2)
视频与用户个人资料无关,因此第一个关系是错误的。它还需要跨越另一个表格才能找到用户的视频。使用第二个。