最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

定制FileField中的上傳文件名稱實例

 更新時間:2017年08月23日 09:21:33   投稿:jingxian  
下面小編就為大家?guī)硪黄ㄖ艶ileField中的上傳文件名稱實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

FileField中的upload_to屬性可以設(shè)定上傳文件的存儲目錄和名稱,它可以是個字符串,也可以是個callable,比如一個方法。

當(dāng)upload_to的值設(shè)為一個方法時,就可以對上傳文件的名稱進(jìn)行修改了。方法需要兩個參數(shù),instance與filename,instance為此FileField所屬的Model實例,filename為上傳文件的名稱。

舉例:

 def user_directory_path(instance, filename): 
# file will be uploaded to MEDIA_ROOT/user_<id>/<filename> 
return 'user_{0}/{1}'.format(instance.user.id, filename) 

class MyModel(models.Model): 
upload = models.FileField(upload_to=user_directory_path) 

當(dāng)一個類定義了__call__方法時,也可以像func一樣被調(diào)用,所以,upload_to的值也可以是一個定義了__call__方法的類。

比如,要根據(jù)上傳時間為文件名加時間戳:

import hashlib 
import os 
import time 
 
from django.utils.deconstruct import deconstructible 
 
 
@deconstructible
class TimeStampFileName(object): 
  def __init__(self, path): 
    self.path = os.path.join(path, "%s%s") 
 
  def __call__(self, instance, filename): 
    extension = os.path.splitext(filename)[1] 
    data = "%s_%d"%(filename,int(time.time())) 
    file_hash = hashlib.sha1(data).hexdigest() 
    return self.path % (file_hash, extension)

Model中的FileField可以如下定義:

class MyModel(models.Model): 
  upload = models.FileField(upload_to=TimeStampFileName('media/'), ) 

以上這篇定制FileField中的上傳文件名稱實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于Python制作一款屏幕顏色提取器

    基于Python制作一款屏幕顏色提取器

    這篇文章主要為大家介紹了如何利用Python制作一款簡易的屏幕顏色提取器,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,感興趣的可以動手試一試
    2022-03-03
  • Django的models模型的具體使用

    Django的models模型的具體使用

    這篇文章主要介紹了Django的models模型的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • python打開url并按指定塊讀取網(wǎng)頁內(nèi)容的方法

    python打開url并按指定塊讀取網(wǎng)頁內(nèi)容的方法

    這篇文章主要介紹了python打開url并按指定塊讀取網(wǎng)頁內(nèi)容的方法,涉及Python操作URL及網(wǎng)頁內(nèi)容的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • pygame實現(xiàn)俄羅斯方塊游戲(對戰(zhàn)篇1)

    pygame實現(xiàn)俄羅斯方塊游戲(對戰(zhàn)篇1)

    這篇文章主要為大家詳細(xì)介紹了pygame實現(xiàn)俄羅斯方塊游戲的對戰(zhàn)篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-10-10
  • python 獲取星期字符串的實例

    python 獲取星期字符串的實例

    這篇文章主要介紹了python 獲取星期字符串的實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • python的即時標(biāo)記項目練習(xí)筆記

    python的即時標(biāo)記項目練習(xí)筆記

    這篇文章主要介紹了python的即時標(biāo)記項目練習(xí)筆記,本文是閱讀《python基礎(chǔ)教程》一書的動手實踐項目,需要的朋友可以參考下
    2014-09-09
  • Python flask框架實現(xiàn)瀏覽器點擊自定義跳轉(zhuǎn)頁面

    Python flask框架實現(xiàn)瀏覽器點擊自定義跳轉(zhuǎn)頁面

    這篇文章主要介紹了Python flask框架實現(xiàn)瀏覽器點擊自定義跳轉(zhuǎn)頁面,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • pytorch 修改預(yù)訓(xùn)練model實例

    pytorch 修改預(yù)訓(xùn)練model實例

    今天小編就為大家分享一篇pytorch 修改預(yù)訓(xùn)練model實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python腳本請求數(shù)量達(dá)到上限,http請求重試問題

    python腳本請求數(shù)量達(dá)到上限,http請求重試問題

    這篇文章主要介紹了python腳本請求數(shù)量達(dá)到上限,http請求重試問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python異常模塊traceback用法實例分析

    Python異常模塊traceback用法實例分析

    這篇文章主要介紹了Python異常模塊traceback用法,結(jié)合實例形式分析了Python異常模塊traceback的基本功能、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2019-10-10

最新評論

米泉市| 安化县| 高陵县| 洮南市| 承德市| 浦城县| 改则县| 克什克腾旗| 高碑店市| 浦北县| 阿图什市| 兴化市| 宣恩县| 扎兰屯市| 普宁市| 阆中市| 南涧| 镇平县| 内乡县| 霍邱县| 金华市| 四子王旗| 麻阳| 璧山县| 贵港市| 屯留县| 都兰县| 永川市| 南涧| 砀山县| 南雄市| 海伦市| 南开区| 桃园市| 丹棱县| 庄河市| 囊谦县| 阿拉善左旗| 金堂县| 衡水市| 炎陵县|