<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                如果你之前使用 Django 模板,你應該會發現跟 Jinja2 非常相似。實際上, 很多的語法元素看起來相同,工作也相同。 盡管如此, Jinja2 提供了更多的在之前文檔中描述的語法元素,并且某些 工作會有一點不一樣。 本節介紹了模板差異。由于 API 是從根本上不同,我們不會再這里贅述。 ### 方法調用[](http://docs.jinkan.org/docs/jinja2/switching.html#id3 "Permalink to this headline") 在 Django 中,方法調用是隱式的。在 Jinja2 中,你必須指定你要調用一個對象。如 此,這段 Django 代碼: ~~~ {% for page in user.get_created_pages %} ... {% endfor %} ~~~ 在 Jinja 中應該是這樣: ~~~ {% for page in user.get_created_pages() %} ... {% endfor %} ~~~ 這允許你給函數傳遞變量,且宏也使用這種方式,而這在 Django 中是不可能的。 ### 條件[](http://docs.jinkan.org/docs/jinja2/switching.html#id4 "Permalink to this headline") 在 Django 中你可以使用下面的結構來判斷是否相等: ~~~ {% ifequal foo "bar" %} ... {% else %} ... {% endifequal %} ~~~ 在 Jinja2 中你可以像通常一樣使用 if 語句和操作符來做比較: ~~~ {% if foo == 'bar' %} ... {% else %} ... {% endif %} ~~~ 你也可以在模板中使用多個 elif 分支: ~~~ {% if something %} ... {% elif otherthing %} ... {% elif foothing %} ... {% else %} ... {% endif %} ~~~ ### 過濾器參數[](http://docs.jinkan.org/docs/jinja2/switching.html#id5 "Permalink to this headline") Jinja2 為過濾器提供不止一個參數。參數傳遞的語法也是不同的。一個這樣的 Django 模板: ~~~ {{ items|join:", " }} ~~~ 在 Jinja2 中是這樣: ~~~ {{ items|join(', ') }} ~~~ 實際上這有點冗贅,但它允許不同類型的參數——包括變量——且不僅是一種。 ### 測試[](http://docs.jinkan.org/docs/jinja2/switching.html#id6 "Permalink to this headline") 除過濾器外,同樣有用 is 操作符運行的測試。這里是一些例子: ~~~ {% if user.user_id is odd %} {{ user.username|e }} is odd {% else %} hmm. {{ user.username|e }} looks pretty normal {% endif %} ~~~ ### 循環[](http://docs.jinkan.org/docs/jinja2/switching.html#id7 "Permalink to this headline") 因為循環與 Django 中的十分相似,僅有的不兼容是 Jinja2 中循環上下文的特殊變 量名為loop?而不是 Django 中的?forloop?。 ### 周期計[](http://docs.jinkan.org/docs/jinja2/switching.html#id8 "Permalink to this headline") Jinja 中沒有?{%?cycle?%}?標簽,因為它是隱式的性質。而你可以用循環對象 的?cycle?方法實現幾乎相同的東西。 下面的 Django 模板: ~~~ {% for user in users %} <li class="{% cycle 'odd' 'even' %}">{{ user }}</li> {% endfor %} ~~~ Jinja 中看起來是這樣: ~~~ {% for user in users %} <li class="{{ loop.cycle('odd', 'even') }}">{{ user }}</li> {% endfor %} ~~~ 沒有與?{%?cycle?...?as?variable?%}?等價的。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看