创建用于审查的 Django 模型给出了这个消息

creating django model for review gives this msg

当我尝试创建评论时 table,我收到以下错误消息。终端中的 models.py 和错误消息如下所述。

models.py

class reviews(models.Model):
    reviewee = models.ForeignKey('Person', on_delete=models.CASCADE)
    reviewer = models.ForeignKey('Person', on_delete=models.CASCADE)
    review = models.TextField()
    rating = models.FloatField()

class Person(models.Model):
    email = models.CharField(max_length=30)
    pwd = models.CharField(max_length=30)
    type = models.CharField(max_length=30)

终端输出

SystemCheckError: System check identified some issues:

ERRORS:
pfapp.reviews.reviewee: (fields.E304) Reverse accessor for 'reviews.reviewee' clashes with reverse accessor for 'reviews.reviewer'.
        HINT: Add or change a related_name argument to the definition for 'reviews.reviewee' or 'reviews.reviewer'.
pfapp.reviews.reviewer: (fields.E304) Reverse accessor for 'reviews.reviewer' clashes with reverse accessor for 'reviews.reviewee'.
        HINT: Add or change a related_name argument to the definition for 'reviews.reviewer' or 'reviews.reviewee'.

System check identified 2 issues (0 silenced).

我的模型背后的逻辑是一个人可以评论另一个人。此外,当评论者或被评论者从 table 中删除时,评论也应被删除。

希望你能理解我的想法。

你可以做然后迁移:

reviewee = models.ForeignKey('Person', on_delete=models.CASCADE)
reviewer = models.ForeignKey('Person', on_delete=models.CASCADE, related_name="reviewer", null=True)

现在,在默认情况下,您可以从 person.reviews 获得 reviewee。并且,从 person.reviewer 获得 审稿人 。看看这个 SO question 以获得更好的理解。