1. 程式人生 > >django如何實現檔案的上傳,修改,刪除,展示(04)

django如何實現檔案的上傳,修改,刪除,展示(04)

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#
# Moudel providing the method oe the Ads
# __author__ = Tom
# __date__   = 2017/03/09
# __email__  = [email protected]
# __version__ = v0.1.dev


# python core API
import os
import time
import random

# django API
from django.conf import settings
from django.http import HttpResponse
from django.core.files.storage import FileSystemStorage


# modify the name of file
class FileStorage(FileSystemStorage):
    """

    """
    def __init__(self, location=settings.MEDIA_ROOT, base_url=settings.MEDIA_URL):
        super(FileStorage, self).__init__(location, base_url)


    """
     over
    """
    def save(self, name, content):
        """
            Help on function splitext in module ntpath:

            splitext(p)
                Split the extension from a pathname.

                Extension is everything from the last dot to the end, ignoring
                leading dots.  Returns "(root, ext)"; ext may be empty.

            >>> os.path.splitext('ssss.ssss.txt')
            ('ssss.ssss', '.txt')
            >>> os.path.splitext('ssss.ssss.txt')[1]
            '.txt'
            >>>
        """

        ext = os.path.splitext(name)[1]
        """
         path:/var/lib/xxx.txt

         dir = os.path.abspath(os.path.dirname('/var/lib/xxx.txt'))
         return /var/lib/


        """
        dirname = os.path.dirname(name)

        fn = time.strftime('%Y%m%d%H%M%S')
        fn = fn +'_%d' % random.randint(0, 100)
        name = os.path.join(dirname, fn+ext)
        return super(FileStorage, self)._save(name, content)




相關推薦

十三、根據HDFS提供的API實現檔案、下載、刪除、重新命名、移動

一、 根據HDFS提供的API,實現以下功能: 針對檔案: 上傳、下載、刪除、重新命名、移動 package HdfsApi; import java.io.File; import java.io.FileInputStream; import java.io.IOExc

python django 實現檔案

最近在學習 python django 框架,然後網上找了好多東西在做,下面是實現的第一個功能。 通過 python django 實現 web 頁面上傳檔案至伺服器。 操作環境: Centos 7 Python 2.7.5 Django 1.10.2

java實現ftp修改刪除檔案

public class FtpUtil { private static Logger logger = Logger.getLogger(FtpUtil.class); private static FTPClient CLIENT = null; privat

MultipartRequest實現檔案修改檔名稱

用JSP+servlet實現檔案的上傳 一、編寫一個上傳的jsp頁面,這裡注意<form>屬性,編碼格式為enctype="multipart/form-data"格式,以二進位制形式提交資料,提交方式為post方式 <html> <

django FileField檔案重新命名ModelForm驗證儲存

models.py class TeleplayTable(models.Model): tid = models.CharField(max_length=50, primary_key=True, verbose_name='ID') name = models.Ch

Mybatis Blob和String互轉實現檔案等。

這樣的程式碼網上有很多,但是本人親測有bug, 下面是我寫的程式碼。望參考 1 @MappedJdbcTypes(JdbcType.BLOB) 2 public class BlobAndStringTypeHandler extends BaseTypeHandler<String&g

MAC實用SSH連線遠端伺服器實現檔案下載

MAC作為程式設計師的神器,在程式設計上的使用遠超window的電腦,而MAC本身提供了SSH功能,配合VIM編輯器對程式設計十分有幫助。 使用ssh連線遠端主機   sudo -i 切換root許可權 ssh [email protected] 其中,

使用HttpClient4實現檔案請求的傳送伺服器端以MultipartFile形式接收(附依賴jar包地址)

今天學習使用了HttpClient4.2向服務端傳送上傳檔案的post請求,由於伺服器端採用MultipartFile形式接收,查詢資料後決定使用HttpClient4.2實現,以下是實現程式碼(僅作測試使用): public void testtask

使用ajaxJquerySpring BootMultipartFile實現檔案功能

MultipartFile 方法總結  byte[] getBytes()  返回檔案的內容作為一個位元組陣列。  String getContentType()&nbs

結合bootstrap fileinput外掛和Bootstrap-table表格外掛實現檔案、預覽、提交的匯入Excel資料操作流程

1、bootstrap-fileinpu的簡單介紹 在前面的隨筆,我介紹了Bootstrap-table表格外掛的具體專案應用過程,本篇隨筆介紹另外一個Bootstrap FieInput外掛的使用,整合兩者可以實現我們常規的Web資料匯入操作,匯入資料操作過程包括有上傳檔案,預覽資料,選擇並提交記錄等一系

由SpringMVC實現檔案前端基於easyui

後臺控制層的方法參考部落格:http://blog.csdn.net/qciwyy/article/details/54017166 本部落格主要講解前臺方法(基於easyui的easyui-filebox控制元件) 一 .easyui-1.4.0前版本使用方法,在這之前e

實現檔案以及表單提交成功的回撥函式

主要將實現一下兩個功能: 1、使用commons-fileupload實現檔案的上傳(包括圖片);2、使用jquery-form.js實現表單提交成功的回撥函式。 <%@ page language="java" contentType="text/html;

Servlet實現檔案可多檔案

一、Servlet實現檔案上傳,需要新增第三方提供的jar包 下載地址: 接著把這兩個jar包放到 lib資料夾下: 二: 檔案上傳的表單提交方式必須是POST方式, 編碼型別:enctype="multipart/form-data",預設是 applicati

JavaWeb檔案圖片到非工程目錄然後前端訪問

首先,假如使用的是eclipse開發專案,那麼eclipse執行tomcat並不是tomcat安裝目錄,而是eclipse的一個外掛目錄。如果想在tomcat的安裝目錄部署專案,那麼就要修改eclipse配置tomcat的虛擬目錄。 然後我們將上傳圖片到後臺,然後前端ht

django 12、實現檔案

一、實現檔案上傳 1定義模型 #上傳作品表:作品名稱,使用者名稱 class Upload(models.Model): #注意這裡的使用者名稱是FileField型別 name = models.FileField(upload_to = './uplo

git本地檔案到遠端倉庫時本地專案與遠成倉庫不是同一個專案的BUG

原文地址 http://blog.csdn.net/lindexi_gd/article/details/52554159 本文講的是把Git在最新2.9.2,合併pull兩個不同的專案,出現的問題如何去解決fatal: refusing to merge unre

Django實現檔案功能

在web開發中,檔案上傳與下載是常見的功能,在Django中實現檔案的上傳與下載也非常簡單,實現步驟與其他功能實現類似,1. 新建一個模板,2. 編寫模板對應的view函式,3. 配置view與模板關

django 快速實現檔案(django2.0)

django2.0 快速實現檔案上傳 本操作環境: 虛擬環境:django2.0 python3.5(應該python3.6都可以使用) window10 1.建立專案與應用(專案和應用都是自己制定的) 建立專案:django-admin star

Python+Django+Js並利用表單實現檔案

這段程式碼適用於利用form表單進行檔案的提交,並保證所提交的檔案格式為txt。 判斷檔案是否存在,如果存在則刪除舊檔案儲存新檔案並執行A,如果不存在則執行B。 前端: <form action="{% url 'searchform' %}  method="P

Django與Ajax三---實現檔案

1>先看下基於FORM表單的檔案上傳 為了證明設個request.FILES裡面存的確實是一個檔案物件,我們把它下載下來, 2>再看ajax怎麼實現檔案上傳 看下上面的檔案取值 所以   $('#file')[0].file