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

Django中模版的子目錄與include標(biāo)簽的使用方法

 更新時(shí)間:2015年07月16日 15:03:48   投稿:goldensun  
這篇文章主要介紹了Django中模版的子目錄與include標(biāo)簽的使用方法,有利于Python的Django框架的模版布局,需要的朋友可以參考下

get_template()中使用子目錄

把所有的模板都存放在一個(gè)目錄下可能會(huì)讓事情變得難以掌控。 你可能會(huì)考慮把模板存放在你模板目錄的子目錄中,這非常好。 事實(shí)上,我們推薦這樣做;一些Django的高級(jí)特性(例如將在第十一章講到的通用視圖系統(tǒng))的缺省約定就是期望使用這種模板布局。

把模板存放于模板目錄的子目錄中是件很輕松的事情。 只需在調(diào)用 get_template() 時(shí),把子目錄名和一條斜杠添加到模板名稱之前,如:

t = get_template('dateapp/current_datetime.html')

由于 render_to_response() 只是對(duì) get_template() 的簡(jiǎn)單封裝, 你可以對(duì) render_to_response() 的第一個(gè)參數(shù)做相同處理。

return render_to_response('dateapp/current_datetime.html', {'current_date': now})

對(duì)子目錄樹的深度沒有限制,你想要多少層都可以。 只要你喜歡,用多少層的子目錄都無所謂。

注意

Windows用戶必須使用斜杠而不是反斜杠。 get_template() 假定的是 Unix 風(fēng)格的文件名符號(hào)約定。

include 模板標(biāo)簽

在講解了模板加載機(jī)制之后,我們?cè)俳榻B一個(gè)利用該機(jī)制的內(nèi)建模板標(biāo)簽: {% include %} 。該標(biāo)簽允許在(模板中)包含其它的模板的內(nèi)容。 標(biāo)簽的參數(shù)是所要包含的模板名稱,可以是一個(gè)變量,也可以是用單/雙引號(hào)硬編碼的字符串。 每當(dāng)在多個(gè)模板中出現(xiàn)相同的代碼時(shí),就應(yīng)該考慮是否要使用 {% include %} 來減少重復(fù)。

下面這兩個(gè)例子都包含了 nav.html 模板。這兩個(gè)例子是等價(jià)的,它們證明單/雙引號(hào)都是允許的。

{% include 'nav.html' %}
{% include "nav.html" %}

下面的例子包含了 includes/nav.html 模板的內(nèi)容:

{% include 'includes/nav.html' %}

下面的例子包含了以變量 template_name 的值為名稱的模板內(nèi)容:

{% include template_name %}

和在 get_template() 中一樣, 對(duì)模板的文件名進(jìn)行判斷時(shí)會(huì)在所調(diào)取的模板名稱之前加上來自 TEMPLATE_DIRS 的模板目錄。

所包含的模板執(zhí)行時(shí)的 context 和包含它們的模板是一樣的。 舉例說,考慮下面兩個(gè)模板文件:

# mypage.html

<html>
<body>
{% include "includes/nav.html" %}
<h1>{{ title }}</h1>
</body>
</html>

# includes/nav.html

<div id="nav">
  You are in: {{ current_section }}
</div>

如果你用一個(gè)包含 current_section的上下文去渲染 mypage.html這個(gè)模板文件,這個(gè)變量將存在于它所包含(include)的模板里,就像你想象的那樣。

如果{% include %}標(biāo)簽指定的模板沒找到,Django將會(huì)在下面兩個(gè)處理方法中選擇一個(gè):

  1.     如果 DEBUG 設(shè)置為 True ,你將會(huì)在 Django 錯(cuò)誤信息頁面看到 TemplateDoesNotExist 異常。
  2.     如果 DEBUG 設(shè)置為 False ,該標(biāo)簽不會(huì)引發(fā)錯(cuò)誤信息,在標(biāo)簽位置不顯示任何東西。


相關(guān)文章

  • Python中for后接else的語法使用

    Python中for后接else的語法使用

    這篇文章主要介紹了Python中for后接else的語法使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • TensorFlow中如何確定張量的形狀實(shí)例

    TensorFlow中如何確定張量的形狀實(shí)例

    這篇文章主要介紹了TensorFlow中如何確定張量的形狀實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python 公共方法匯總解析

    python 公共方法匯總解析

    這篇文章主要介紹了python 公共方法匯總解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09
  • Python和Anaconda和Pycharm安裝教程圖文詳解

    Python和Anaconda和Pycharm安裝教程圖文詳解

    PyCharm是一種PythonIDE,帶有一整套可以幫助用戶在使用Python語言開發(fā)時(shí)提高其效率的工具,這篇文章主要介紹了Python和Anaconda和Pycharm安裝教程,需要的朋友可以參考下
    2020-02-02
  • python 批量重命名移動(dòng)文件

    python 批量重命名移動(dòng)文件

    這篇文章主要介紹了如何用python 批量重命名移動(dòng)多個(gè)文件,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-03-03
  • python實(shí)現(xiàn)比較兩段文本不同之處的方法

    python實(shí)現(xiàn)比較兩段文本不同之處的方法

    這篇文章主要介紹了python實(shí)現(xiàn)比較兩段文本不同之處的方法,涉及Python針對(duì)文本與字符串的相關(guān)操作技巧,需要的朋友可以參考下
    2015-05-05
  • python 解決微分方程的操作(數(shù)值解法)

    python 解決微分方程的操作(數(shù)值解法)

    這篇文章主要介紹了python 解決微分方程的操作(數(shù)值解法),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Django通過dwebsocket實(shí)現(xiàn)websocket的例子

    Django通過dwebsocket實(shí)現(xiàn)websocket的例子

    今天小編就為大家分享一篇Django通過dwebsocket實(shí)現(xiàn)websocket的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 使用NumPy讀取MNIST數(shù)據(jù)的實(shí)現(xiàn)代碼示例

    使用NumPy讀取MNIST數(shù)據(jù)的實(shí)現(xiàn)代碼示例

    這篇文章主要介紹了使用NumPy讀取MNIST數(shù)據(jù)的實(shí)現(xiàn)代碼示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Python數(shù)據(jù)可視化Pyecharts庫的使用教程

    Python數(shù)據(jù)可視化Pyecharts庫的使用教程

    pyecharts是一個(gè)用于生成echarts圖表的類庫。echarts是百度開源的一個(gè)數(shù)據(jù)可視化庫,用echarts生成的圖可視化效果非常棒。使用pyechart庫可以在python中生成echarts數(shù)據(jù)圖。本文將詳細(xì)介紹一下Pyecharts庫的使用,需要的可以參考一下
    2022-02-02

最新評(píng)論