我想呈現一個將上傳圖像的表單。但我沒有得到它。圖像上傳字段不能在Django中工作
這裏的models.py: 在forms.py
profile_picture = models.ImageField(_('profile picture'),upload_to="profile_pictures" , blank=True, null=True,default="static/images/person.jpg")
: 在views.py
class UploadProfilePictureForm(forms.Form):
profile_picture=forms.ImageField(label='Select an Image')
:
在urls.pydef add_profile_picture(request):
if request.method=='POST':
form=UploadProfilePictureForm(request.POST,request.FILES)
p=FearUser(profile_picture=request.FILES['profile_picture'])
p.save()
return HttpResponseRedirect(reverse('profile:my_profile'))
else:
form=UploadProfilePictureForm
return render_to_response('partials/_add_profile_picture.html',{'form':form},context_instance=RequestContext(request))
:
url(r'^profile/update-pp/$','profiles.views.add_profile_picture',name='pp_update')
終於在_add_profile_picture.html:
<form action="{% url 'profile:pp_update' %}" role="form" method="post" enctype="multipart/form-data">
{% csrf_token %}
<p>{{ form.profile_picture.label_suffix }}</p>
<p>
{{ form.profile_picture.error_messages }}
{{ form.profile_picture }}
</p>
<div class="text-right">
<button type="button" class="btn btn-default custom_btn cancel_btn"
style="padding:5px 20px" data-dismiss="modal">Cancel
</button>
<button type="submit" class="btn btn-default custom_btn submit_btn"
style="padding:5px 20px">Submit
</button>
</div>
</form>
誰能給我解釋一下我做了什麼錯?
Actullay我沒有得到上傳,它應該在模板中呈現;在呈現表單之後,我可以嘗試使用cleared_data或form.is_valid()。 –