将 multiwidget 用于具有只读附加数据的多对多字段

Use multiwidget for many to many field with readonly additional data

我有以下型号:

class Exam(models.Model):
    participants = models.ManyToMany(settings.AUTH_USER_MODEL, through='Participation')

class Participation(models.Model)
    user = models.OneToOneField(settings.AUTH_USER_MODEL)
    exam = models.ForeignKey('Exam')
    specific_number = models.PositiveIntegerField(editable=False)

如您所见,我存储在中间模型中的数据是只读的。它是在创建实例时由系统自动生成的。所以我希望能够在管理员中使用 multiwidget 来 select 参与者。 (当您有大量用户时,使用内联真的很难)。 有办法吗?

我发现的唯一方法是使用新视图来管理管理员中的参与者,并通过覆盖默认编辑模板向其添加 link。