• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            c++實(shí)例研究

            從0開(kāi)始

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              104 隨筆 :: 0 文章 :: 20 評(píng)論 :: 0 Trackbacks
            用兩個(gè)大括號(hào)括起來(lái)的文字(例如 {{ person_name }} )是 變量(variable)

            被大括號(hào)和百分號(hào)包圍的文本(例如 {% if ordered_warranty %} )是 模板標(biāo)簽(template tag) 。標(biāo)簽(tag)定義比較明確,即:僅通知模板系統(tǒng)完成某些工作的標(biāo)簽。

            最后,這個(gè)模板的第二段落有一個(gè) filter 過(guò)濾器的例子,它能讓你用來(lái)轉(zhuǎn)換變量的輸出, 在這個(gè)例子中, {{ship_date|date:"F j, Y" }} 將變量 ship_datedate 過(guò)濾器來(lái)轉(zhuǎn)換,轉(zhuǎn)換的參數(shù)是 "F j, Y" . date 過(guò)濾器根據(jù)指定的參數(shù)進(jìn)行格式輸 出.過(guò)濾器是用管道字符( | )來(lái)調(diào)用的,就和Unix管道一樣.

            Template 類就在 django.template 模塊中

            輸入命令 python manage.py shell 啟動(dòng)交互界面

            調(diào)用 Template 對(duì)象 的 render() 方法并傳遞context來(lái)填充模板

            Python的字典數(shù)據(jù)類型就是關(guān)鍵字和它們值的一個(gè)映射。 Context 和字典很類似

            注意到我們使用了三個(gè)引號(hào)來(lái) 標(biāo)識(shí)這些文本,因?yàn)檫@樣可以包含多行。這是Python的一個(gè)語(yǔ)法。

            Python列表類型的索引是從0開(kāi)始的,第一個(gè)元素的索引是0,第二個(gè)是1,以此類推。

            句點(diǎn)查找規(guī)則可概括為:當(dāng)模板系統(tǒng)在變量名中遇到點(diǎn)時(shí),按照以下順序嘗試進(jìn)行查找:

            • 字典類型查找 (比如 foo["bar"] )

            • 屬性查找 (比如 foo.bar )

            • 方法調(diào)用 (比如 foo.bar() )

            • 列表類型索引查找 (比如 foo[bar] )

            在方法查找過(guò)程中,如果某方法拋出一個(gè)異常,除非該異常有一個(gè) silent_variable_failure 屬性并且值為 True ,否則的話它將被傳播。如果該異常 確有 屬性 silent_variable_failure ,那么(所查找)變量將被渲染為空字符串

            顯然,有些方法是有副作用的,好的情況下允許模板系統(tǒng)訪問(wèn)它們可能只是干件蠢事,壞的情況下甚至?xí)l(fā)安全漏洞。

            例如,你的一個(gè) BankAccount 對(duì)象有一個(gè) delete() 方法。不應(yīng)該允許模板包含像 {{account.delete}} 這樣的方法調(diào)用。

            要防止這樣的事情發(fā)生,必須設(shè)置該方法的 alters_data 函數(shù)屬性

            {% if %} 標(biāo)簽檢查(evaluate)一個(gè)變量,如果這個(gè)變量為真(即,變量存在,非空,不是布爾值假),系統(tǒng)會(huì)顯示在 {% if %}{% endif %} 之間的任何內(nèi)容

            {% if %} 標(biāo)簽接受 andor 或者 not 關(guān)鍵字來(lái)對(duì)多個(gè)變量做判斷 ,或者對(duì)變量取反( not )

            {% if %} 標(biāo)簽不允許在同一個(gè)標(biāo)簽中同時(shí)使用 andor ,因?yàn)檫壿嬌峡赡苣:?br>
            系統(tǒng)不支持用圓括號(hào)來(lái)組合比較操作

            {% for %} 允許我們?cè)谝粋€(gè)序列上迭代。與Python的 for 語(yǔ)句的情形類似,循環(huán)語(yǔ)法是 for X in Y ,Y是要迭代的序列而X是在每一個(gè)特定的循環(huán)中使用的變量名稱

            給標(biāo)簽增加一個(gè) reversed 使得該列表被反向迭代

            Django不支持退出循環(huán)操作。如果我們想退出循環(huán),可以改變正在迭代的變量,讓其僅僅包含需要迭代的項(xiàng)目

            forloop.counter 總是一個(gè)表示當(dāng)前循環(huán)的執(zhí)行次數(shù)的整數(shù)計(jì)數(shù)器。這個(gè)計(jì)數(shù)器是從1開(kāi)始的,所以在第一次循環(huán)時(shí) forloop.counter 將會(huì)被設(shè)置為1

            forloop.counter0 類似于 forloop.counter

            forloop.revcounter 是表示循環(huán)中剩余項(xiàng)的整型變量

            forloop.revcounter0 類似于 forloop.revcounter ,但它以0做為結(jié)束索引。

            forloop.first 是一個(gè)布爾值。在第一次執(zhí)行循環(huán)時(shí)該變量為T(mén)rue,在下面的情形中這個(gè)變量是很有用的。

            forloop.last 是一個(gè)布爾值;在最后一次執(zhí)行循環(huán)時(shí)被置為T(mén)rue。

            forloop.parentloop 是一個(gè)指向當(dāng)前循環(huán)的上一級(jí)循環(huán)的 forloop 對(duì)象的引用(在嵌套循環(huán)的情況下)

            Django模板系統(tǒng)壓根兒就沒(méi)想過(guò)實(shí)現(xiàn)一個(gè)全功能的編程語(yǔ)言,所以它不允許我們?cè)谀0逯袌?zhí)行Python的語(yǔ)句


            posted on 2010-06-17 22:45 elprup 閱讀(475) 評(píng)論(0)  編輯 收藏 引用 所屬分類: web開(kāi)發(fā)
            欧美久久久久久午夜精品| 无码人妻久久一区二区三区免费丨| 日本五月天婷久久网站| 久久99精品久久久久久齐齐 | 色偷偷91久久综合噜噜噜噜| 久久精品九九亚洲精品| 伊人久久久AV老熟妇色| 久久亚洲私人国产精品| 国内高清久久久久久| 欧美大香线蕉线伊人久久| 亚洲av成人无码久久精品| 久久婷婷成人综合色综合| 久久国产乱子伦免费精品| 久久99精品久久久久久| 欧美综合天天夜夜久久| 国内精品久久久久久不卡影院| 99久久久久| 亚洲精品无码专区久久同性男| 性做久久久久久久久| 国产99久久久国产精品小说| 亚洲国产欧美国产综合久久| 午夜不卡久久精品无码免费| 99国产精品久久久久久久成人热| 久久久青草青青亚洲国产免观| 久久久国产精品网站| 日韩美女18网站久久精品| 久久久久久久免费视频| 久久99精品久久久久久久久久 | 久久电影网一区| 久久久久人妻一区精品| 久久久一本精品99久久精品88| 久久精品国产网红主播| 久久久久久久综合综合狠狠| 久久精品一区二区三区AV| 狠狠精品久久久无码中文字幕 | 精品久久久久久国产三级| 国产免费久久精品99re丫y| 99国产欧美久久久精品蜜芽| 久久中文精品无码中文字幕| 久久精品中文无码资源站| 亚洲国产香蕉人人爽成AV片久久|