将 Django 默认模型值分配为外部字段键的计数

Assign Django default model value as count of a foreign field key

我正在研究如何将字段的总和值添加到外键定义中

class TestInfo(models.Model):
    customer_name = models.ForeignKey(TestQuestion, on_delete=models.PROTECT, to_field="correct_answer" default=self.get_count())
    def get_count(self):
        TestQuestion.objects.filter(user=settings.AUTH_USER_MODEL, test_number=TestQuestion.test_number).count(correct_answer=True)

只要有创建或编辑,它就应该将值填充为 customer_name。当在 TestQuestion 模型的 save/edit.

中添加或更改值列表或更改值时,我将实现 TestInfo.customer_name 的保存值

您可以在 TestInfo 上设置 pre_save 信号并在那里设置 get_count 产生的值(在这种情况下静态方法可能更好)。