Django 模型:我想 link 一个模型的特定属性到另一个不是主键的模型。我该怎么做?

Django Models: I want to link a specific attribute of a model to another model that is not the primary key. How would I do it?

我对 Django 比较陌生,我的模型需要一些帮助。

我的 paperAssign 应用程序 models.py 看起来像(不包括所有导入):

class Reviewer(models.Model):

    reviewerID = models.AutoField(primary_key=True)
    paper = models.ManyToManyField(Document)

    Select_Reviewer = models.OneToOneField(RegUser, default=None)

    def __str__(self):
        return "%s" % (self.Select_Reviewer)

我的 models.py 评论应用程序文件看起来像(不包括所有导入):

SCORE_CHOICES = (
    (1, '1'),
    (2, '2'),
    (3, '3'),
    (4, '4'),
    (5, '5'),
    (6, '6'),
    (7, '7'),
    (8, '8'),
    (9, '9'),
    (10, '10'),
)

CONFIDENCE_CHOICES = (
    (1, 'Not confident'),
    (2, 'Unsure'),
    (3, 'Somewhat confident'),
    (4, 'Moderately confident'),
    (5, 'Very confident'),
)


class Review(models.Model):
    comment = models.TextField()
    score = models.IntegerField(choices=SCORE_CHOICES)  
    confidence = models.IntegerField(choices=CONFIDENCE_CHOICES)
    paper = models.ForeignKey(Document)

    def __str__(self):
        return '%s' % (self.paper)

我需要将 class Reviewpaper 属性连接到 class Reviewerpaper 属性。是否可以有第二个主键?或者我应该怎么做?

提前致谢!

限制审稿人可查看的论文不需要任何字段连接;你所拥有的关系是完全足够的。您只需要过滤论文查询;假设你有一个 reviewer 对象,你可以用 reviewer.paper.all().

得到他们分配的所有论文