我要做的是用/ wihtout图片发送用户的文本并将其响应到页面而不再重新加载页面。
Django表格:
class PostForm(forms.ModelForm):
text = forms.CharField(max_length=128)
picture = forms.ImageField(required=False)
class Meta:
model = Post
fields = ['text', 'picture',]
HTML:
<form id="post_form" enctype="multipart/form-data">
<div class="fieldWrapper">
{% csrf_token %}
{{ postForm.as_p }}
</div>
<INPUT id="postBtn" type="submit" name="submit" value="submit"/>
</form>
JQuery的:
$("#postBtn").click(function() {
$.ajax({
type: "POST",
url: "/restaurant/feed/",
data: $("#post_form").serialize(),
success: function(data)
{
// do something
}
})
}
查看:
def feed(request):
print request.FILES
我从print获得的结果是空列表。 有什么建议吗?顺便说一下,我可以在没有ajax方法的情况下上传图片。
答案 0 :(得分:3)
您无法通过jQuery $.ajax()
发送文件,您应该选择其他解决方案,例如http://blueimp.github.io/jQuery-File-Upload/或https://github.com/Widen/fine-uploader