django學習之模板系統

django模板系統學習筆記之for
在for標籤裏面,有以下知識點:
forloop.counter
forloop.counter0
forloop.first
forloop.last
forloop.revcounter
forloop.revcounter0
froloop.parentloop
empty

下面我們舉例學習:

首先到我們的工程目錄下,敲入:

python manage.py shell

# forloop.counter
from django.template import Context, Template
t = Template("""
    {% for item in our_list %}
        <p>` forloop`.`counter `: ` item `</p?
    {% endfor %}"""
)
c = Context({'our_list': [x for x in range(10)]})
print t.render(c)

#forloop.counter0
from django.template import Context, Template
t = Template("""
    {% for item in our_list %}
        <p>` forloop`.`counter0 `: ` item `</p?
    {% endfor %}"""
)
c = Context({'our_list': [x for x in range(10)]})
print t.render(c)

#forloop.first
t = Template("""
    {% for object in objects %}
        {% if forloop.first %}
            <li class="first">
        {% else %}
            <li>
        {% endif %}
        ` object `</li>
    {% endfor %}
c = Context({'objects': [x for x in range(10)]})
print t.render(c)

#forloop.last
t = Template("""
    {% for link in links %}` link `{% if not forloop.last %} | {% endif %}{% endfor %}
    """)
c = Context({'links': ['link'+ x for x in range(10)]})
print t.render(c)

#forloop.parentloop
t = Template("""
    {% 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 %}""")
china = {'city_list': ['shanghai', 'beijing']}
usa = {'city_list': ['xxxx', 'yyy']}
countries = [china, usa]
c = Context(countries)
t.render(c)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章