从文件:
read_only将此属性设置为True可确保在序列化表示时使用该字段,但在反序列化期间更新实例时不使用该字段.
默认为False
required如果在反序列化期间未提供字段,通常会引发错误.如果在反序列化期间不需要此字段,则设置为false.
默认为True.
所以我有一个模型,它有一个不可空的字段,但我希望它在pre_save方法中填充,所以我将字段设置为required=False序列化器,但似乎不起作用.保存记录时我仍然收到错误.
class FavoriteListSerializer(serializers.ModelSerializer):
owner = serializers.IntegerField(required=False)
class Meta:
model = models.FavoriteList
Run Code Online (Sandbox Code Playgroud)
更新:我已添加serializer_class = serializers.FavoriteListSerializer到ViewSet,现在而不是获取This field is required,我认为已通过验证,但后来我得到了This field cannot be null.检查pre_save方法没有被执行,任何想法?