一、普通上传文件
1 后台
from django.shortcuts import render,HttpResponse# Create your views here.def login(request): ???if request.method == ‘GET‘: ???????return render(request, ‘login.html‘)def fileupload(request): ???myfile=request.FILES.get(‘myfile‘) ???with open(myfile.name,‘wb‘)as f: ???????for line in myfile: ???????????f.write(line) ???return HttpResponse(‘上传成功‘)
2 配置url
3 前端
<!DOCTYPE html><html lang="en"><head> ???<meta charset="UTF-8"> ???<script src="/static/jquery-3.3.1.js"></script> ???<title>Title</title></head><body><form action="/fileupload/" method="post" enctype="multipart/form-data"> ???<p>名字:<input type="text" name="name"></p> ???<p>文件:<input type="file" name="myfile"></p> ???<p><input type="submit" value="提交"></p></form></body></html>
二、ajax上传文件
1.后台
def fileupload(request): ???myfile=request.FILES.get(‘myfile‘) ???with open(r‘D:\iii\o\p‘,‘wb‘)as f: ???????for line in myfile: ???????????f.write(line) ???return HttpResponse(‘上传成功‘)
2 配置url
3 前端
<!DOCTYPE html><html lang="en"><head> ???<meta charset="UTF-8"> ???<script src="/static/jquery-3.3.1.js"></script> ???<title>Title</title></head><body><h1>ajax上传文件</h1><p>名字:<input type="text" id="id_name"></p><p>文件:<input type="file" id="id_file"></p><button id="filebtn">ajax上传文件</button></body><script> ???$("#filebtn").click(function () { ???????var myfile=$("#id_file")[0].files[0] ???????var formdata=new FormData() ???????formdata.append(‘name‘,$("#id_name").val()) ???????formdata.append(‘myfile‘,myfile) ???????$.ajax({ ???????????url:/fileupload/, ???????????type:‘post‘, ???????????processData:false, ???????????contentType:false, ???????????data:formdata, ???????????success:function (data) { ???????????????console.log(data) ???????????} ???????}) ???})</script></html>
上传文件、ajax上传文件
原文地址:https://www.cnblogs.com/zhanggq/p/10289575.html