【发布时间】:2021-02-16 21:00:08
【问题描述】:
这是我的 API 序列化器:
class ProductSerializer(serializers.ModelSerializer):
class Meta:
model = Product
fields = [
'name',
]
def create(self, validated_data):
from django.db.models import F, Case, When
instance, created = self.Meta.model.objects.update_or_create(
merchant=validated_data.pop('merchant'),
defaults={
'name': Case(
When(is_synchronizable=True, then='test'),
default=F('name')
)
}
)
return instance
我想在 is_synchronizable 为 True 时更新名称。 但我得到这个错误:
django.core.exceptions.FieldError: Cannot resolve keyword 'test' into field.
【问题讨论】:
标签: django postgresql django-rest-framework django-orm