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

Django1.9 加載通過ImageField上傳的圖片方法

 更新時(shí)間:2018年05月25日 10:19:22   作者:sherlockzoom  
今天小編就為大家分享一篇Django1.9 加載通過ImageField上傳的圖片方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

這里假設(shè)你是通過models的ImageField上傳圖片,并期望在前臺(tái)img標(biāo)簽中能顯示。能否訪問圖片關(guān)鍵在于,是否能通過正確的路徑訪問。

在models.py中有image如下

image = models.ImageField(upload_to='images/%Y/%m', verbose_name='文件縮略圖')

在顯示頁面中如show.html中使用img標(biāo)簽顯示

<img class="center-block thumbnail" src="{{result.object.image.url }}" alt="" />

不過這里{{result.object.image.url}}只是讀取出了上面模型upload_to下面的路徑,并不能真正顯示出來。要在模板中顯示,還需要在urls.py和settings.py配置

下一步,在你的urls.py中配置如下:

from django.conf.urls import include, url
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
  '''你的其他url配置'''
]

urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

setttings.py中配置 MEDIA_URL 和 MEDIA_ROOT,這里定義了media相關(guān)配置,也就是定義了模型中ImageField里的參數(shù)upload_to所在目錄

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

到此,我們能夠正確訪問通過ImageFields上傳的圖片,下面是官方文檔上面的一些說明

具體的相關(guān)文檔

在模型中調(diào)用FileField 或 ImageField (見下方) 需如下幾步:

在你的settings文件中, 你必須要定義 MEDIA_ROOT 作為Django存儲(chǔ)上傳文件的路徑(從性能上考慮,這些文件不能存在數(shù)據(jù)庫(kù)中。) 定義一個(gè) MEDIA_URL 作為基礎(chǔ)的URL或者目錄。確保這個(gè)目錄可以被web server使用的賬戶寫入。

在模型中添加FileField 或 ImageField 字段, 定義 upload_to參數(shù),內(nèi)容是 MEDIA_ROOT 的子目錄,用來存放上傳的文件。

數(shù)據(jù)庫(kù)中存放的僅是這個(gè)文件的路徑 (相對(duì)于MEDIA_ROOT). 你很可能會(huì)想用由Django提供的便利的url 屬性。比如說, 如果你的ImageField 命名為 mug_shot, 你可以在template中用 {{ object.mug_shot.url }}獲得你照片的絕對(duì)路徑。

例如,如果你的 MEDIA_ROOT設(shè)定為 ‘/home/media',并且 upload_to設(shè)定為 photos/%Y/%m/%d。 upload_to的'%Y/%m/%d‘被strftime()所格式化;'%Y' 將會(huì)被格式化為一個(gè)四位數(shù)的年份, ‘%m' 被格式化為一個(gè)兩位數(shù)的月份'%d'是兩位數(shù)日份。如果你在Jan.15.2007上傳了一個(gè)文件,它將被保存在/home/media/photos/2007/01/15目錄下.

以上這篇Django1.9 加載通過ImageField上傳的圖片方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Softmax函數(shù)原理及Python實(shí)現(xiàn)過程解析

    Softmax函數(shù)原理及Python實(shí)現(xiàn)過程解析

    這篇文章主要介紹了Softmax函數(shù)原理及Python實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • Python中matplotlib如何改變畫圖的字體

    Python中matplotlib如何改變畫圖的字體

    這篇文章主要介紹了Python中matplotlib如何改變畫圖的字體,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • scrapy實(shí)踐之翻頁爬取的實(shí)現(xiàn)

    scrapy實(shí)踐之翻頁爬取的實(shí)現(xiàn)

    這篇文章主要介紹了scrapy實(shí)踐之翻頁爬取的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • python監(jiān)控linux內(nèi)存并寫入mongodb(推薦)

    python監(jiān)控linux內(nèi)存并寫入mongodb(推薦)

    這篇文章主要介紹了python監(jiān)控linux內(nèi)存并寫入mongodb的相關(guān)資料,需要的朋友可以參考下
    2017-09-09
  • python讀寫LMDB文件的方法

    python讀寫LMDB文件的方法

    這篇文章主要為大家詳細(xì)介紹了python讀寫LMDB文件的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • Python MySQLdb模塊連接操作mysql數(shù)據(jù)庫(kù)實(shí)例

    Python MySQLdb模塊連接操作mysql數(shù)據(jù)庫(kù)實(shí)例

    這篇文章主要介紹了Python MySQLdb模塊連接操作mysql數(shù)據(jù)庫(kù)實(shí)例,本文直接給出操作mysql代碼實(shí)例,包含創(chuàng)建表、插入數(shù)據(jù)、插入多條數(shù)據(jù)、查詢數(shù)據(jù)等內(nèi)容,需要的朋友可以參考下
    2015-04-04
  • 基于Python繪制世界疫情地圖詳解

    基于Python繪制世界疫情地圖詳解

    這篇文章主要介紹了如何使用Python繪制世界疫情地圖,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Python之OptionParser模塊使用詳解

    Python之OptionParser模塊使用詳解

    這篇文章主要為大家詳細(xì)介紹了Python之OptionParser模塊使用,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • django中path和url函數(shù)的具體使用

    django中path和url函數(shù)的具體使用

    本文主要介紹了django中path和url函數(shù)的具體使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 使用Python3制作TCP端口掃描器

    使用Python3制作TCP端口掃描器

    本文給大家分享的是使用Python3 實(shí)現(xiàn)TCP全連接端口掃描器的制作過程,包括思路和代碼,非常簡(jiǎn)單易懂,推薦給大家
    2017-04-04

最新評(píng)論