在我的应用中,用户可以更改他们的个人资料数据,如全名,性别,个人资料图片和其他内容。问题是当用户想要保持相同的个人资料图片并且文件输入为空时。我如何在我看来支持这一点。
这是我的html updateProfile.html
struct MyStruct
{
public override bool Equals(object obj) =>
obj is MyStruct mys
&& mys.field1 == this.field1
&& mys.field2 == this.field2;
}
这是我的 views.py updateprofile
<form action="{% url 'updateprofile' %}" enctype="multipart/form-data" method="POST">{% csrf_token %}
<input type="file" id="logofile" name="avatar" accept="image/gif, image/jpeg, image/png" value="">
<input type="text"name="full_name">
<input type="date"name="birthdate">
</form>
如果我在文件输入中更改文件,一切正常。但是,如果我没有上传新图像并将文件输入留空,则会出错。 如何检查POST请求中是否有文件?请帮忙
答案 0 :(得分:1)
您可以使用if request.FILES.get('avatar')
代替if request.FILES['avatar']
这不会引发KeyError。