• Django文件上传


    一、普通上传方式

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6 </head>
     7 <body>
     8 <form action="/upload.html" method="post" enctype="multipart/form-data">
     9     {% csrf_token %}
    10     <p><input type="file" name="uploadFile"></p>
    11     <div style="position: relative">
    12         <a href="#">自定义上传按钮</a>
    13         <input type="submit" value="上传" style="position: absolute;top: 0;left: 0;opacity: 0.2;">
    14     </div>
    15 </form>
    16 </body>
    17 </html>
    HTML
     1 from django.shortcuts import render
     2 from django.shortcuts import redirect
     3 from django.shortcuts import HttpResponse
     4 import os
     5 
     6 # Create your views here.
     7 from django import forms
     8 from django.forms import fields
     9 
    10 class myForm(forms.Form):
    11     uploadFile=fields.FileField(required=True)
    12 
    13 def upload(request):
    14     if request.method=="GET":
    15         return render(request,"upload.html")
    16     else:
    17         uploadFile=request.FILES.get("uploadFile")
    18         f=open(os.path.join('C:/Users/Administrator/PycharmProjects-forWork/Django_upload/static/img',uploadFile.name),"wb")
    19         for i in uploadFile.chunks():
    20             f.write(i)
    21         f.close()
    22         return HttpResponse("上传完成")
    view函数

    二、Form上传方式

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Title</title>
     6 </head>
     7 <body>
     8 <form action="/upload.html" method="post" enctype="multipart/form-data">
     9     {% csrf_token %}
    10     <p><input type="file" name="uploadFile"></p>
    11     <div style="position: relative">
    12         <a href="#">自定义上传按钮</a>
    13         <input type="submit" value="上传" style="position: absolute;top: 0;left: 0;opacity: 0.2;">
    14     </div>
    15 </form>
    16 </body>
    17 </html>
    HTML
     1 from django.shortcuts import render
     2 from django.shortcuts import redirect
     3 from django.shortcuts import HttpResponse
     4 import os
     5 
     6 # Create your views here.
     7 from django import forms
     8 from django.forms import fields
     9 
    10 class myForm(forms.Form):
    11     uploadFile=fields.FileField(required=True)
    12 
    13 def upload(request):
    14     if request.method=="GET":
    15         return render(request,"upload.html")
    16     else:
    17         obj=myForm(request.POST,request.FILES)
    18         if obj.is_valid():
    19             uploadFile=obj.cleaned_data["uploadFile"]
    20             f=open(os.path.join('C:/Users/Administrator/PycharmProjects-forWork/Django_upload/static/img',uploadFile.name),"wb")
    21             for i in uploadFile.chunks():
    22                 f.write(i)
    23             f.close()
    24             return HttpResponse("上传完成")
    25         else:
    26             return HttpResponse("上传失败")
    view函数
  • 相关阅读:
    sql server 查询数据判断为空
    sql 排序
    ASP.NE 上传文件控件
    JQ 获取下一个元素和获取下一个元素的[指定]子元素
    sql server 查询时间 格式化输出
    ASP.NET 页面验证cookie
    ASP.NET MD5加密
    HTML编辑器ASP.NET
    Repeater控件
    20150215-情愿
  • 原文地址:https://www.cnblogs.com/sun-10387834/p/12490157.html
Copyright © 2020-2023  润新知