如何使用带注释的字段更新Django模型?

时间:2019-08-18 18:25:11

标签: django-models

我使用以下Manager重命名模型中的字段:

class CustomManager(models.Manager):
    def get_queryset(self):
        return super(CustomManager, self).get_queryset().values(user=F('user_a'),target=F('user_b'),user_relationship=F('user_a_relationship'),target_relationship=F('user_b_relationship'))

如果可以,则过滤有效:

models.CustomManager.objects.filter(user_relationship='P')

但是当我尝试使用带注释的字段进行更新时,会引发该字段不存在的错误。

models.CustomManager.objects.filter(user_relationship='P').update(user_relationship='A')

django.core.exceptions.FieldDoesNotExist: CustomManager has no field named 'user_relationship'

当然可以使用原始字段名称:

models.CustomManager.objects.filter(user_relationship='P').update(user_a_relationship='A')

是否可以通过带注释的字段发送更新?

0 个答案:

没有答案