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

django創(chuàng)建自定義模板處理器的實(shí)例詳解

 更新時(shí)間:2017年08月14日 10:41:21   投稿:lqh  
這篇文章主要介紹了django創(chuàng)建自定義模板處理器的實(shí)例詳解的相關(guān)資料,這里說(shuō)明了如何需要django模板處理器及實(shí)現(xiàn)方法,希望大家能理解掌握這部分內(nèi)容,需要的朋友可以參考下

django創(chuàng)建自定義模板處理器:

一、需求來(lái)源:

在django開(kāi)發(fā)中,頁(yè)面是通過(guò)template(模板)進(jìn)行渲染的,對(duì)于一些數(shù)據(jù),可以通過(guò){{ 變量 }}的方式進(jìn)行傳遞。但是,如果整個(gè)網(wǎng)站中,或者整個(gè)網(wǎng)站的大部分頁(yè)面都用到了一些變量或者數(shù)據(jù),那么每次渲染的時(shí)候都傳遞一次這幾個(gè)數(shù)據(jù)顯得相當(dāng)?shù)娜哂唷_@與django的DRY(Don't repeat yourself)思想不符,因此django提供了一種方式,讓你能自定義處理器。

二、django默認(rèn)的處理器:

在django開(kāi)發(fā)中,django默認(rèn)為你加載了四個(gè)處理器,這些處理器是django包自帶的。你可以在settings.py中的TEMPLATES的OPTIONS的context_processors中找到所有django為你默認(rèn)加載的處理器。
其中有包括:

'django.template.context_processors.debug',        'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',        'django.contrib.messages.context_processors.messages',

三、自定義django處理器:

建議在項(xiàng)目的主app下(也就是你的項(xiàng)目名稱的app下)創(chuàng)建一個(gè)文件叫做context_processors.py
不管是自定義的處理器還是django自帶的處理器,都是定義一個(gè)函數(shù),這個(gè)函數(shù)帶有一個(gè)request的參數(shù),返回一個(gè)字典,用來(lái)表示模板中的參數(shù)。

比如我們要?jiǎng)?chuàng)建一個(gè)帶有個(gè)人信息的處理器,格式如下:

def mycontact(request):
  return {
    'telephone': 'aaa',
    'qq': 'bbb',
    'email': 'cc@163.com'
  }

在settings.py配置文件中,找到TEMPLATES里面的context_processors,然后在后面添加你的自定義的處理器,比如我們的項(xiàng)目名稱叫mysite,然后我把context_processors.py放到了mysite/mysite下面,也就是和settings.py同級(jí)的目錄下,因此加載的路勁為mysite.context_processors.mycontact,因此,現(xiàn)在的context_processors中的數(shù)據(jù)如下:

'context_processors': [
  'mysite.context_processors.mycontact',
          'django.template.context_processors.debug',
          'django.template.context_processors.request',
          'django.contrib.auth.context_processors.auth',
          'django.contrib.messages.context_processors.messages',
    ]

以后你就可以在你的模板文件中,通過(guò){{變量}}的方式引入你的變量了。

注意事項(xiàng):你必須在TEMPLATES中將APP_DIRS設(shè)置為True,django才會(huì)加載你放在django的app下面的處理器。

如有疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,大家共同進(jìn)步,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Python中實(shí)現(xiàn)輸入超時(shí)及如何通過(guò)變量獲取變量名

    Python中實(shí)現(xiàn)輸入超時(shí)及如何通過(guò)變量獲取變量名

    這篇文章主要介紹了Python中實(shí)現(xiàn)輸入超時(shí)以及通過(guò)變量獲取變量的名字,本文給大家分享了解決思路主要是通過(guò)多線程法實(shí)現(xiàn),需要的朋友可以參考下
    2020-01-01
  • python中pandas庫(kù)中DataFrame對(duì)行和列的操作使用方法示例

    python中pandas庫(kù)中DataFrame對(duì)行和列的操作使用方法示例

    這篇文章主要介紹了python中pandas庫(kù)中DataFrame對(duì)行和列的操作使用方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06
  • Pytorch矩陣乘法(torch.mul() 、 torch.mm() 和torch.matmul()的區(qū)別)

    Pytorch矩陣乘法(torch.mul() 、 torch.mm() 和torch.m

    在深度學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)的世界里,矩陣乘法是一項(xiàng)至關(guān)重要的操作,本文主要介紹了Pytorch矩陣乘法,包含了torch.mul() 、 torch.mm() 和torch.matmul()的區(qū)別,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • 一文帶你掌握Matplotlib圖形繪制

    一文帶你掌握Matplotlib圖形繪制

    Matplotlib是一個(gè)基于Python的繪圖庫(kù),它提供了一整套與Matlab相似的命令A(yù)PI,非常適合交互式繪圖,這篇文章主要給大家介紹了關(guān)于Matplotlib圖形繪制的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • Python+PyQt5實(shí)現(xiàn)滅霸響指功能

    Python+PyQt5實(shí)現(xiàn)滅霸響指功能

    這篇文章主要介紹了Python+PyQt5實(shí)現(xiàn)滅霸響指功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • python中@property的作用和getter setter的解釋

    python中@property的作用和getter setter的解釋

    這篇文章主要介紹了python中@property的作用和getter setter的解釋,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • python 捕獲shell腳本的輸出結(jié)果實(shí)例

    python 捕獲shell腳本的輸出結(jié)果實(shí)例

    下面小編就為大家?guī)?lái)一篇python 捕獲shell腳本的輸出結(jié)果實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-01-01
  • Python繪圖實(shí)現(xiàn)坐標(biāo)軸共享與復(fù)用詳解

    Python繪圖實(shí)現(xiàn)坐標(biāo)軸共享與復(fù)用詳解

    這篇文章主要為大家詳細(xì)介紹了Python在繪圖時(shí)如何實(shí)現(xiàn)坐標(biāo)軸共享與復(fù)用,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-02-02
  • Python?matplotlib實(shí)戰(zhàn)之箱型圖繪制

    Python?matplotlib實(shí)戰(zhàn)之箱型圖繪制

    箱型圖(Box?Plot),也稱為盒須圖或盒式圖,是一種用作顯示一組數(shù)據(jù)分布情況的統(tǒng)計(jì)圖,因型狀如箱子而得名,本文主要為大家介紹了如何使用Matplotlib繪制箱型圖,需要的小伙伴可以參考下
    2023-08-08
  • python實(shí)現(xiàn)發(fā)送郵件

    python實(shí)現(xiàn)發(fā)送郵件

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)發(fā)送郵件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-03-03

最新評(píng)論