欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django實(shí)現(xiàn)圖片上傳功能步驟解析

 更新時(shí)間:2020年04月22日 15:32:11   作者:小陸同學(xué)  
這篇文章主要介紹了Django實(shí)現(xiàn)圖片上傳功能步驟解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1.首先是html頁(yè)面的form表單的三大屬性,action是提交到哪,method是提交方式,enctype只要有圖片上傳就要加這個(gè)屬性

Django框架自帶csrf_token ,所以需要在前端頁(yè)面也生成csrf_token字符串,來(lái)驗(yàn)證真實(shí)客戶

    <form action="/pic_upload/" method="POST" enctype="multipart/form-data">
      {% csrf_token %}
      <input type="file" name="file">
      <input type="submit" value="提交">
     </form>

2.如下是上傳圖片的接口:

def pic_upload(request):
  if request.method == "GET":
    return render(request,"helloapp/pic_upload.html",locals())
  if request.method == "POST":
    error = ""
    fp = request.FILES.get("file")
    # fp 獲取到的上傳文件對(duì)象
    if fp:
      path = os.path.join(STATICFILES_DIRS[0],'image/' + fp.name)  # 上傳文件本地保存路徑, image是static文件夾下專門存放圖片的文件夾
      # fp.name #文件名
      #yield = fp.chunks() # 流式獲取文件內(nèi)容
      # fp.read() # 直接讀取文件內(nèi)容
      if fp.multiple_chunks():  # 判斷上傳文件大于2.5MB的大文件
        # 為真
        file_yield = fp.chunks()  # 迭代寫入文件
        with open(path,'wb') as f:
          for buf in file_yield:   # for情況執(zhí)行無(wú)誤才執(zhí)行 else
            f.write(buf)
          else:
            print("大文件上傳完畢")
      else:
        with open(path,'wb') as f:
          f.write(fp.read())
        print("小文件上傳完畢")
      models.ImgPath.objects.create(path=('image/' + fp.name))   # image是static文件夾下專門存放圖片的文件夾
    else:
      error = "文件上傳為空"
      return render(request,"helloapp/pic_upload.html",locals())
    return redirect("helloapp/pic_index/") # 重定向到首頁(yè)

3.做個(gè)圖片展示的頁(yè)面,對(duì)圖片展示對(duì)應(yīng)的接口傳過(guò)來(lái)的參數(shù)加以判斷

   {% for img in imgs %}
   <img src="{% static img.path %}">
   {% empty %}
   <h1>您沒(méi)有上傳任何圖片</h1>
   {% endfor %}

4.圖片展示的接口:

def pic_index(request):
  imgs = models.ImgPath.objects.all()
  return render(request,'helloapp/pic_index.html',locals())

至此,Django中一個(gè)簡(jiǎn)單的圖片上傳到展示就做好了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Django教程筆記之中間件middleware詳解

    Django教程筆記之中間件middleware詳解

    Django 中的中間件(middleware),是一個(gè)鑲嵌到Django的request/response處理機(jī)制中的一個(gè)hooks框架,是一個(gè)修改django全局輸入輸出的一個(gè)底層插件系統(tǒng)。這篇文章主要給大家介紹了關(guān)于Django教程筆記之中間件middleware的相關(guān)資料,需要的朋友可以參考下
    2018-08-08
  • 在VScode中引用自定義模塊問(wèn)題

    在VScode中引用自定義模塊問(wèn)題

    這篇文章主要介紹了在VScode中引用自定義模塊問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • Python黑魔法之metaclass詳情

    Python黑魔法之metaclass詳情

    Python 有很多黑魔法,為了不分你的心,今天只講 metaclass。對(duì)于 metaclass 這種特性,有兩種極端的觀點(diǎn):下面小編將為大家詳細(xì)的介紹,剛興趣的小伙伴可以參考一下
    2021-09-09
  • Python模塊搜索路徑代碼詳解

    Python模塊搜索路徑代碼詳解

    這篇文章主要介紹了Python模塊搜索路徑代碼詳解,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • 8個(gè)Python編程進(jìn)階常用技巧分享

    8個(gè)Python編程進(jìn)階常用技巧分享

    介紹?Python?炫酷功能的文章層出不窮,但是還有很多?Python?的編程小技巧鮮被提及,所以本文會(huì)試著介紹一些其它文章沒(méi)有提到的小技巧,讓我們一探究竟吧
    2023-07-07
  • python實(shí)現(xiàn)回旋矩陣方式(旋轉(zhuǎn)矩陣)

    python實(shí)現(xiàn)回旋矩陣方式(旋轉(zhuǎn)矩陣)

    今天小編就為大家分享一篇python實(shí)現(xiàn)回旋矩陣方式(旋轉(zhuǎn)矩陣),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-12-12
  • Python?Requests使用Cookie的幾種方式詳解

    Python?Requests使用Cookie的幾種方式詳解

    這篇文章主要給大家介紹了關(guān)于Python?Requests使用Cookie的幾種方式,Python中的requests庫(kù)可以使用cookie來(lái)維持會(huì)話狀態(tài),實(shí)現(xiàn)登錄等操作,需要的朋友可以參考下
    2023-07-07
  • 精心整理總結(jié)的Python自動(dòng)化測(cè)試面試題

    精心整理總結(jié)的Python自動(dòng)化測(cè)試面試題

    簡(jiǎn)單來(lái)說(shuō),自動(dòng)化測(cè)試框架包含了所有的測(cè)試工作所需的測(cè)試框架,下面這篇文章主要給大家介紹了關(guān)于Python自動(dòng)化測(cè)試面試題的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • Python數(shù)據(jù)分析之繪制m1-m2數(shù)據(jù)

    Python數(shù)據(jù)分析之繪制m1-m2數(shù)據(jù)

    這篇文章主要介紹了Python數(shù)據(jù)分析之繪制m1-m2數(shù)據(jù),文章基于python的相關(guān)資料展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-05-05
  • 利用Python對(duì)文件夾下圖片數(shù)據(jù)進(jìn)行批量改名的代碼實(shí)例

    利用Python對(duì)文件夾下圖片數(shù)據(jù)進(jìn)行批量改名的代碼實(shí)例

    今天小編就為大家分享一篇關(guān)于利用Python對(duì)文件夾下圖片數(shù)據(jù)進(jìn)行批量改名的代碼實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-02-02

最新評(píng)論