django - 如何通过ajax发送django文本和图片形式

标签 django jquery

我想做的是发送带有/不带图片的用户文本并将其响应到页面,而无需再次重新加载页面。

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

我从打印中得到的结果是空列表。 有什么建议吗?顺便说一句,我可以不使用ajax方法上传图片。

最佳答案

您无法通过 jQuery $.ajax() 发送文件,您应该寻求其他解决方案,例如 http://blueimp.github.io/jQuery-File-Upload/https://github.com/Widen/fine-uploader

关于django - 如何通过ajax发送django文本和图片形式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17748524/

相关文章:

javascript - 输入最后一位数字后自动提交

django - 无法在教程中访问 Django 中的项目 API

django - django-allauth:将多个社交帐户链接到单个用户

javascript - 我如何将 "this"放入此函数... jquery slider

Jquery JSON解析@id :

javascript - 在元素之间循环并将类更改为下一个

python - 如何添加新的序列化器字段以及所有模型字段?

python - 安排常规事件 : Cron/Cron alternatives (including Celery)

python - 如何从我的输入中过滤表情符号字符,以便我可以在 MySQL <5.5 中保存?

jquery - 在jquery模式对话框onclick中加载外部php文件