一尘不染

django-rest-framework如何使模型序列化器字段必填

angularjs

我有一个逐步填写的模型,这意味着我正在制作一个表单向导。

因此,此模型中的大多数字段都是必需的,但必须null=True, blank=True避免在提交部分数据时引发非空错误。

我正在使用Angular.js和django-rest-framework,我需要告诉api应该是x和y字段,如果它们为空,则需要返回验证错误。


阅读 257

收藏
2020-07-04

共1个答案

一尘不染

您需要专门覆盖该字段并添加自己的验证器。您可以在此处详细了解http://www.django-rest-framework.org/api-
guide/serializers/#specifying-fields-explicitly。这是示例代码。

def required(value):
    if value is None:
        raise serializers.ValidationError('This field is required')

class GameRecord(serializers.ModelSerializer):
    score = IntegerField(validators=[required])

    class Meta:
        model = Game
2020-07-04