摘要:在用開發服務端的時候,利用了的組件上傳圖片,因圖片名字不統一所以想給上傳的圖片重命名,從網上找了一些代碼資料,在自己的項目中出錯,所以自己摸索找到了解決辦法,代碼如下在項目根目錄中新建文件夾,并在文件夾下添加和文件并在中添加如下代碼
在用django開發app服務端的時候,利用了django的upload組件上傳圖片,因圖片名字不統一所以想給上傳的圖片重命名,從網上找了一些代碼資料,在自己的項目中出錯,所以自己摸索找到了解決辦法,代碼如下:
1、在項目根目錄中新建文件夾system,并在system文件夾下添加__init__.py和storage.py文件,并在storage.py中添加如下代碼:
# -*- coding: UTF-8 -*- from django.core.files.storage import FileSystemStorage from django.http import HttpResponse class ImageStorage(FileSystemStorage): from django.conf import settings def __init__(self, location=settings.MEDIA_ROOT, base_url=settings.MEDIA_URL): # 初始化 super(ImageStorage, self).__init__(location, base_url) # 重寫 _save方法 def _save(self, name, content): import os, time, random # 文件擴展名 ext = os.path.splitext(name)[1] # 文件目錄 d = os.path.dirname(name) # 定義文件名,年月日時分秒隨機數 fn = time.strftime("%Y%m%d%H%M%S") fn = fn + "_%d" % random.randint(0,100) # 重寫合成文件名 name = os.path.join(d, fn + ext) # 調用父類方法 return super(ImageStorage, self)._save(name, content)
2、在models.py文件中添加如下代碼:
from system.storage import ImageStorage pic=models.ImageField(upload_to="img/%Y/%m/%d",storage=ImageStorage())
3、這樣就解決了問題,效果如下:
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42938.html
摘要:選擇該頁面綁定的標簽指定圖片上傳處理目錄注其中為了顯示為中文,標明了中文,同時需要下載語言包放到對應的文件夾下。 前言 我們常因為django的自帶admin后臺功能而選擇該框架,但也因為其自動生成的特殊性而在做出特別的更改的時候束手束腳,鑒于項目已經采用了django,而后臺要求能夠直接上傳富文本內容直接用于網頁顯示,定制性高,后來翻了目前較為知名的幾款富文本編輯框,覺得還是tiny...
摘要:選擇該頁面綁定的標簽指定圖片上傳處理目錄注其中為了顯示為中文,標明了中文,同時需要下載語言包放到對應的文件夾下。 前言 我們常因為django的自帶admin后臺功能而選擇該框架,但也因為其自動生成的特殊性而在做出特別的更改的時候束手束腳,鑒于項目已經采用了django,而后臺要求能夠直接上傳富文本內容直接用于網頁顯示,定制性高,后來翻了目前較為知名的幾款富文本編輯框,覺得還是tiny...
摘要:選擇該頁面綁定的標簽指定圖片上傳處理目錄注其中為了顯示為中文,標明了中文,同時需要下載語言包放到對應的文件夾下。 前言 我們常因為django的自帶admin后臺功能而選擇該框架,但也因為其自動生成的特殊性而在做出特別的更改的時候束手束腳,鑒于項目已經采用了django,而后臺要求能夠直接上傳富文本內容直接用于網頁顯示,定制性高,后來翻了目前較為知名的幾款富文本編輯框,覺得還是tiny...
摘要:前端提交提交成功格式不對不允許上傳這種格式文件已存在文件已存在上傳錯誤上傳錯誤服務器錯誤上傳文件上傳服務端獲取原始文件名獲取文件后綴名設置新文件名允許上傳的圖片后綴小于上傳錯誤此處可以輸出文件的詳細信息文件已存在格式不對文件目錄記 showImg(https://segmentfault.com/img/bVbwr3B?w=340&h=133); 前端 index.html ...
摘要:對象關系映射,簡稱模式是一種為了解決面向對象與關系數據庫存在的互不匹配的現象的技術。在業務邏輯層和數據庫層之間充當了橋梁的作用。每個字段被指定為一個類屬性,每個屬性映射到一個數據庫列。字符類型,必須提供參數,表示字符長度。 對象關系映射(Object Relational Mapping,簡稱ORM)模式是一種為了解決面向對象與關系數據庫存在的互不匹配的現象的技術。 簡單的說,ORM是...
閱讀 3859·2023-04-26 00:36
閱讀 2667·2021-11-16 11:44
閱讀 1082·2021-11-15 17:58
閱讀 1665·2021-09-30 09:47
閱讀 1208·2019-08-30 13:05
閱讀 1539·2019-08-30 12:55
閱讀 2409·2019-08-30 11:02
閱讀 2718·2019-08-29 17:01