thi*_*sms 5 django django-rest-framework
models.py
picture = models.ImageField(upload_to='Images/',
default='/Images/None/No-img.jpg', blank=True,null=True)
Run Code Online (Sandbox Code Playgroud)
serializers.py
class UserProfileSerializer(serializers.ModelSerializer):
picture = serializers.ImageField(max_length=None,
allow_empty_file=True, use_url=True)
class Meta:
model = UserProfile
fields = ('id','picture',)
read_only_fields=('id')
Run Code Online (Sandbox Code Playgroud)
但它仍然显示为必填字段,我无法使用图像发出请求,是不是一个错误?
也许你应该尝试设置现场picture为required=False您的序列化.
由于您已定义image不带任何required参数的字段,因此DRF采用默认required值ie True.如果在反序列化期间未提供此字段,则DRF将引发该image字段所需的错误.
来自文档:
通常,如果在反序列化期间未提供字段,则会引发错误.如果在反序列化期间不需要此字段,则设置为false.
默认为
True.
class UserProfileSerializer(serializers.ModelSerializer):
picture = serializers.ImageField(required=False, max_length=None,
allow_empty_file=True, use_url=True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2332 次 |
| 最近记录: |