Liz*_*Liz 1 django django-rest-framework
如何为django rest框架JSON序列化器字段将required设置为false?无论是否需要标志,它似乎都在强制执行验证:
序列化器字段
results = serializers.JSONField(required=False, label='Result')
Run Code Online (Sandbox Code Playgroud)
模型场
results = models.TextField(blank=True, default="")
Run Code Online (Sandbox Code Playgroud)
但是,当我用空白输入提交表单时,我得到:
"results": [
"Value must be valid JSON."
],
Run Code Online (Sandbox Code Playgroud)
我还尝试在model字段和serializer字段中将模型默认值更改为{},但响应相同。
更新
感谢@Linovia指出:“必填标志的确表示如果该字段不存在,则序列化程序不会抱怨”
经过一番挖掘之后,DRF似乎在输入上设置了默认值null,然后将其捕获为无效值...我该如何覆盖它,因为序列化器的“默认”属性似乎没有任何作用。
"results": null,
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2549 次 |
| 最近记录: |