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

在Django中編寫模版節(jié)點(diǎn)及注冊標(biāo)簽的方法

 更新時(shí)間:2015年07月20日 16:22:57   投稿:goldensun  
這篇文章主要介紹了在Django中編寫模版節(jié)點(diǎn)及注冊標(biāo)簽的方法,Django是Python各式各樣的高人氣框架中最為著名的一個(gè),需要的朋友可以參考下

編寫模板節(jié)點(diǎn)

編寫自定義標(biāo)簽的第二步就是定義一個(gè)擁有 render() 方法的 Node 子類。 繼續(xù)前面的例子,我們需要定義 CurrentTimeNode :

import datetime

class CurrentTimeNode(template.Node):
 def __init__(self, format_string):
  self.format_string = str(format_string)

 def render(self, context):
  now = datetime.datetime.now()
  return now.strftime(self.format_string)

這兩個(gè)函數(shù)( __init__() 和 render() )與模板處理中的兩步(編譯與渲染)直接對應(yīng)。 這樣,初始化函數(shù)僅僅需要存儲后面要用到的格式字符串,而 render() 函數(shù)才做真正的工作。

與模板過濾器一樣,這些渲染函數(shù)應(yīng)該靜靜地捕獲錯誤,而不是拋出錯誤。 模板標(biāo)簽只允許在編譯的時(shí)候拋出錯誤。
注冊標(biāo)簽

最后,你需要用你模塊的Library 實(shí)例注冊這個(gè)標(biāo)簽。 注冊自定義標(biāo)簽與注冊自定義過濾器非常類似(如前文所述)。 只需實(shí)例化一個(gè) template.Library 實(shí)例然后調(diào)用它的 tag() 方法。 例如:

register.tag('current_time', do_current_time)

tag() 方法需要兩個(gè)參數(shù):

  1.     模板標(biāo)簽的名字(字符串)。
  2.     編譯函數(shù)。

和注冊過濾器類似,也可以在Python2.4及其以上版本中使用 register.tag裝飾器:

@register.tag(name="current_time")
def do_current_time(parser, token):
 # ...

@register.tag
def shout(parser, token):
 # ...

如果你像在第二個(gè)例子中那樣忽略 name 參數(shù)的話,Django會使用函數(shù)名稱作為標(biāo)簽名稱。

相關(guān)文章

  • 詳解Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié)

    詳解Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié)

    這篇文章主要介紹了Ubuntu環(huán)境下部署Django+uwsgi+nginx總結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python字典高級用法深入分析講解

    Python字典高級用法深入分析講解

    字典作為Python的一個(gè)內(nèi)置數(shù)據(jù)結(jié)構(gòu),和列表一樣都是可變序列的,但是它是無序的,以鍵值對的方式存儲數(shù)據(jù)。本文將詳解一下Python中字典的高級使用,需要的可以參考一下
    2022-10-10
  • python 實(shí)現(xiàn)二叉搜索樹的四種方法

    python 實(shí)現(xiàn)二叉搜索樹的四種方法

    本文主要介紹了python 實(shí)現(xiàn)二叉搜索樹的四種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 一文教會你用Python3獲取網(wǎng)頁源代碼

    一文教會你用Python3獲取網(wǎng)頁源代碼

    學(xué)了python后,之前一些我們常用的方法,也可以換一種思路用python中的知識來解決,下面這篇文章主要給大家介紹了關(guān)于如何使用Python3獲取網(wǎng)頁源代碼的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Python中字典和集合學(xué)習(xí)小結(jié)

    Python中字典和集合學(xué)習(xí)小結(jié)

    本文通過實(shí)例給大家介紹了python中字典和集合的知識小結(jié),非常不錯,具有參考借鑒價(jià)值,需要的的朋友參考下吧
    2017-07-07
  • python?PyQt5中QButtonGroup的詳細(xì)用法解析與應(yīng)用實(shí)戰(zhàn)記錄

    python?PyQt5中QButtonGroup的詳細(xì)用法解析與應(yīng)用實(shí)戰(zhàn)記錄

    在PyQt5中,QButtonGroup是一個(gè)用于管理按鈕互斥性和信號槽連接的類,它可以將多個(gè)按鈕劃分為一個(gè)組,管理按鈕的選中狀態(tài)和ID,本文詳細(xì)介紹了QButtonGroup的創(chuàng)建、使用方法和實(shí)際應(yīng)用案例,適合需要在PyQt5項(xiàng)目中高效管理按鈕組的開發(fā)者
    2024-10-10
  • 淺談pandas中對nan空值的判斷和陷阱

    淺談pandas中對nan空值的判斷和陷阱

    這篇文章主要介紹了淺談pandas中對nan空值的判斷和陷阱,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • python與C互相調(diào)用的方法詳解

    python與C互相調(diào)用的方法詳解

    這篇文章主要給大家介紹了關(guān)于python與C互相調(diào)用方法的相關(guān)資料,文中通過示例代碼詳細(xì)介紹了動用的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-07-07
  • python 用戶交互輸入input的4種用法詳解

    python 用戶交互輸入input的4種用法詳解

    這篇文章主要介紹了python 用戶交互輸入input的4種用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • BeautifulSoup獲取指定class樣式的div的實(shí)現(xiàn)

    BeautifulSoup獲取指定class樣式的div的實(shí)現(xiàn)

    這篇文章主要介紹了BeautifulSoup獲取指定class樣式的div的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12

最新評論

简阳市| 监利县| 拜城县| 长乐市| 陆丰市| 宝山区| 扬州市| 泽州县| 顺平县| 宜昌市| 馆陶县| 宜州市| 刚察县| 上犹县| 宁强县| 西丰县| 昌邑市| 贵州省| 阳城县| 尚志市| 竹山县| 永靖县| 扎鲁特旗| 扎囊县| 潮州市| 双柏县| 永靖县| 天水市| 松原市| 元氏县| 乾安县| 五峰| 吉木萨尔县| 文山县| 阿拉善盟| 公主岭市| 朝阳市| 应用必备| 灌南县| 吴忠市| 新密市|