zoukankan      html  css  js  c++  java
  • django 文件上传

    文件上传:
    
    1.
    
    node2:/django/mysite/news#cat ../mysite/urls.py
    """mysite URL Configuration
    
    The `urlpatterns` list routes URLs to views. For more information please see:
        https://docs.djangoproject.com/en/1.11/topics/http/urls/
    Examples:
    Function views
        1. Add an import:  from my_app import views
        2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home')
    Class-based views
        1. Add an import:  from other_app.views import Home
        2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')
    Including another URLconf
        1. Import the include() function: from django.conf.urls import url, include
        2. Add a URL to urlpatterns:  url(r'^blog/', include('blog.urls'))
    """
    from django.conf.urls import include,url
    from django.contrib import admin
    from blog import views as view
    from news import views as newview
    urlpatterns =( 
    url(r'^admin/', admin.site.urls),
    url(r'^blog/$',view.archive),
    url(r'^articles/',include("news.urls")),
    url(r'^upload/$',newview.upload,name='upload'),
    )
    
    2.
    
    node2:/django/mysite/news#cat views.py
    # -*- coding: utf-8 -*-
    from __future__ import unicode_literals
    
    from django.shortcuts import render
    from django.http import HttpResponse
    
    # Create your views here.
    from django.shortcuts import render,render_to_response
    from .models import Article
    from django.http import HttpResponse, HttpResponseNotFound
    import datetime
    from django.views.decorators.http import require_http_methods,require_GET
    from django.http import HttpResponseRedirect
    from django.shortcuts import render
    import os
    
    @require_GET
    def my_view(request):
        # ...
        return HttpResponse(status=201)
    def upload(request):
        if request.method=="POST":
            handle_upload_file(request.FILES['file'],str(request.FILES['file']))
            return HttpResponse('Successful') #此处简单返回一个成功的消息,在实际应用中可以返回到指定的页面中  
    
        return render_to_response('upload.html')
    
    def handle_upload_file(file,filename):
        path='/tmp/'     #上传文件的保存路径,可以自己指定任意的路径  
        if not os.path.exists(path):
            os.makedirs(path)
        with open(path+filename,'wb+')as destination:
            for chunk in file.chunks():
                print '-----------'
                print chunk
                print '-----------'
                destination.write(chunk)
    
    3.
    node2:/django/mysite/news#cat templates/upload.html 
    <div class="row">
          <div class="col-md-8 col-md-offset-2">
              <form class="form-inline" role="form"  method="post" enctype="multipart/form-data" accept-charset="utf-8">
                  <div class="form-group">
                      <input type="file" name="file">
                  </div>
                  <div class="form-group">
                      <input type="submit" value="上传文件">
                  </div>
              </form>
          </div>
      </div>

  • 相关阅读:
    批量替换文本的工具
    wcf异常显示错误到客户端
    文件以二进制存入数据库和从数据库读取二进制文件
    关于关系数据库的范式
    对于挑战书上的很久之前都看不懂的DP看懂的突破
    操作系统概念
    关于P,V操作理解的突破,关于并发设计与并行
    关于快速沃尔什变换
    我觉得我应该养成经常翻收藏夹的习惯
    目前我的思考模式
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13349407.html
Copyright © 2011-2022 走看看