<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Sealyu

    --- 博客已遷移至: http://www.sealyu.com/blog

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      618 隨筆 :: 87 文章 :: 225 評論 :: 0 Trackbacks

    Django不支持退出循環操作。如果我們想退出循環,可以改變正在迭代的變量,讓其僅僅包含需要迭代的項目。同理,Django也不支持continue語句,我們無法讓當前迭代操作跳回到循環頭部。(請參看本章稍后的理念和限制小節,了解下決定這個設計的背后原因)

    {% for %} 標簽在循環中設置了一個特殊的 forloop 模板變量。這個變量能提供一些當前循環進展的信息:

    forloop.counter 總是一個表示當前循環的執行次數的整數計數器。這個計數器是從1開始的,所以在第一次循環時 forloop.counter 將會被設置為1。例子如下:

    {% for item in todo_list %}
    <p>{{ forloop.counter }}: {{ item }}</p>
    {% endfor %}

    forloop.counter0 類似于 forloop.counter ,但是它是從0計數的。第一次執行循環時這個變量會被設置為0。

    forloop.revcounter 是表示循環中剩余項的整型變量。在循環初次執行時 forloop.revcounter 將被設置為序列中項的總數。最后一次循環執行中,這個變量將被置1。

    forloop.revcounter0 類似于 forloop.revcounter ,但它以0做為結束索引。在第一次執行循環時,該變量會被置為序列的項的個數減1。在最后一次迭代時,該變量為0。

    forloop.first 是一個布爾值。在第一次執行循環時該變量為True,在下面的情形中這個變量是很有用的。

    {% for object in objects %}
    {% if forloop.first %}<li class="first">{% else %}<li>{% endif %}
    {{ object }}
    </li>
    {% endfor %}

    forloop.last 是一個布爾值;在最后一次執行循環時被置為True。一個常見的用法是在一系列的鏈接之間放置管道符(|)

    {% for link in links %}{{ link }}{% if not forloop.last %} | {% endif %}{% endfor %}

    The above template code might output something like this::

    Link1 | Link2 | Link3 | Link4

    3.

    forloop.parentloop 是一個指向當前循環的上一級循環的 forloop 對象的引用(在嵌套循環的情況下)。例子在此:

    {% for country in countries %}
    <table>
    {% for city in country.city_list %}
    <tr>
    <td>Country #{{ forloop.parentloop.counter }}</td>
    <td>City #{{ forloop.counter }}</td>
    <td>{{ city }}</td>
    </tr>
    {% endfor %}
    </table>
    {% endfor %}

    forloop 變量僅僅能夠在循環中使用,在模板解析器碰到 {% endfor %} 標簽時, forloop 就不可訪問了。

    Context和forloop變量

    在一個 {% for %} 塊中,已存在的變量會被移除,以避免 forloop 變量被覆蓋。Django會把這個變量移動到 forloop.parentloop 中。通常我們不用擔心這個問題,但是一旦我們在模板中定義了 forloop 這個變量(當然我們反對這樣做),在 {% for %} 塊中它會在 forloop.parentloop 被重新命名。

    for
    輪詢數組中的每一元素。例如顯示一個給出的運動員的序列``athlete_list``:
    <ul>
    {% for athlete in athlete_list %}
    <li>{{ athlete.name }}</li>
    {% endfor %}
    </ul>
    你同樣可以反過來用``{% for obj in list reversed %}``輪詢一個列表。
    ``for``循環設置了許多循環中有用的變量(見表F-1)。
    Inline literal start-string without end-string.
    表 F-1. {% for %}循環中的可用變量
    變量名描述
    forloop.counter 循環的當前重復值 (標示為1)。
    forloop.counter0 循環的當前重復值 (標示為0)。
    forloop.revcounter 循環到最后的重復數 (標示為1)。
    forloop.revcounter0 循環到最后的重復數 (標示為0)。
    forloop.first 第一次循環則為``True``。
    forloop.last 最后一次循環則為``True`` 。
    forloop.parentloop 用于嵌套循環,該循環位于當前循環之上。


    posted on 2009-05-28 10:38 seal 閱讀(1146) 評論(0)  編輯  收藏 所屬分類: Python
    主站蜘蛛池模板: 国产hs免费高清在线观看| 亚洲AV永久青草无码精品| 国产精品午夜免费观看网站| 丁香五月亚洲综合深深爱| 50岁老女人的毛片免费观看| 亚洲欧洲av综合色无码| AV在线亚洲男人的天堂| 青青视频观看免费99| 七次郎成人免费线路视频| 亚洲视频一区在线观看| 免费在线观看一级毛片| 日韩精品无码专区免费播放| 蜜芽亚洲av无码一区二区三区| 亚洲人成人一区二区三区| 成年女人18级毛片毛片免费| 人妻免费一区二区三区最新| 亚洲综合久久精品无码色欲| 精品久久久久久亚洲| 破了亲妺妺的处免费视频国产 | 亚洲精品国产日韩无码AV永久免费网| 亚洲天堂在线播放| 亚洲精品线路一在线观看| 青青青免费国产在线视频小草| 中文字幕不卡免费高清视频| 亚洲丶国产丶欧美一区二区三区 | 亚洲精品亚洲人成在线| 亚洲高清在线视频| 亚洲人成无码www久久久| 国产免费AV片在线播放唯爱网| 国产又黄又爽胸又大免费视频 | 亚洲熟妇无码AV不卡在线播放 | jzzijzzij在线观看亚洲熟妇| 噜噜噜亚洲色成人网站∨| 亚洲国产主播精品极品网红| 手机在线毛片免费播放| 老汉精品免费AV在线播放| 中国一级全黄的免费观看| 久久亚洲色WWW成人欧美| 亚洲日本久久久午夜精品| 亚洲AV午夜福利精品一区二区| 亚洲天堂免费在线视频|