jquery ajax 提交form表单 以及django后台接受
HTML
<form id="project_file_upload" enctype="multipart/form-data" > <div class="modal-body"> <!-- multiple 增加此属性,文件可以多选 --> <input type="file" name="file" id="file"> <input id = 'num_id' name="id" type="hidden" value=""> </div> <div class="modal-footer"> <button type="button" class="btn btn-default" data-dismiss="modal">{% trans "Close" %}</button> <button class="btn btn-success" type="submit" id="submit_upload_b"><i class="icon-share"></i> 上传</button> </div> {% csrf_token %} </form>
js 代码
//文件上传函数 function dispalyfiletable(url) { var csrftoken = getCookie('csrftoken'); $.ajax({ cache: false, type: 'POST', data: new FormData($('#project_file_upload')[0]), url: url, traditional:true, //为必须内容 //dataType:'json', //data为json时必须 processData: false, //为必须内容 contentType: false, //为必须内容 success: function(data) { console.log(data); }, beforeSend: function(xhr, settings) { xhr.setRequestHeader("X-CSRFToken", csrftoken); } }); }
django后台代码
form.py ModelForm 写法
from django import forms from django.forms import ModelForm from .models import Advertisement class UploadFileForm(ModelForm): class Meta: model = Advertisement localized_fields = ('__all__') exclude = ['add_time'] error_messages = { 'protype': { 'required': '这是个必填项目', # 生成错误信息 }, }
id = request.POST.get('id','') print(id) form = UploadFileForm(request.POST, request.FILES) file_obj = request.FILES.get('file','') #获取上传文件
分类:
Jquery 常用方法
, Django
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了