Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';这是“什么?”;“正确的道路”;为这个用例设计Django模型?_Django_Database Design - Fatal编程技术网

什么';这是“什么?”;“正确的道路”;为这个用例设计Django模型?

什么';这是“什么?”;“正确的道路”;为这个用例设计Django模型?,django,database-design,Django,Database Design,我对为这个特定用例设计Django模型的“正确方法”有点困惑 我有一个模型叫做Book,User,Rating。我正在设计一个应用程序,让用户对书籍进行评分 评级与用户之间存在多对一关系,与图书之间存在多对一关系 class User(models.Model): name = models.CharField(max_length=30) class Book(models.Model): name = models.CharField(max_length=30) cla

我对为这个特定用例设计Django模型的“正确方法”有点困惑

我有一个模型叫做Book,User,Rating。我正在设计一个应用程序,让用户对书籍进行评分

评级与用户之间存在多对一关系,与图书之间存在多对一关系

class User(models.Model):
    name = models.CharField(max_length=30)

class Book(models.Model):
    name = models.CharField(max_length=30)

class Rating(models.Model):
    user = models.ForeignKey(User,related_name=ratings)
    book = models.ForeignKey(Book,related_name=ratings)
    ...
在这种设计中,我无法确定如何强制执行用户只能对每本书进行一次评分的规则。我也不确定这是否是为这个用例设计模型的正确方法。因此,如果我能在正确的方向上得到一些指示,它可能会帮助我在这个早期阶段避免设计缺陷


提前谢谢

您可以在您的评级模型上使用独特的_-together元选项: