Django---简单模板遍历渲染

简单路由:

urlpatterns = [
path('admin/', admin.site.urls),
path('index/', views.index),
path('list/', views.list),
]

加单控制器:

USER_LIST = [
{'username':'zhangsan','age':30}
]
for i in range(10):
temp = {'username':'zhangsan'+str(i),'age':30+i}
USER_LIST.append(temp)
def list(request):
print(USER_LIST)
return render(request,'list.html',{'user_list':USER_LIST})

简单模板遍历输出:

{% for row in user_list %}
<p>{{ row.username }}</p>
<p>{{ row.age }}</p>
{% endfor %}

模板中还可以做判断:

{% if age %}
有年龄
{% else %}
没有年龄
{% endif %}

判断做嵌套:

{% if age %}
有年龄
{% if age > 30%}
oldman
{% else %}
very yang
{% endif %}
{% else %}

结合使用:

{% for row in userlist %}
{% if row == "alex" %}
{{row.username}
{{row.age}}
{% else %}
{% endif %}

简单案例:

def lists(request):
USER_INFO = { '':'root1','':'root2','':'root3','':'root4'}
return render(request,'lists.html',{'user_info':USER_INFO})

模板遍历循环输出:

<!-- 拿到第一个 root1 -->
{{ user_info.1 }}
<!-- 拿到所有 keys -->
{% for row in user_info.keys %}
<p>{{ row }}</p>
{% endfor %}
<!-- 拿到所有 values -->
{% for row in user_info.values %}
<p>{{ row }}</p>
{% endfor %}
<!-- 拿到 key 和 value -->
{% for k,v in user_info.items %}
<p>{{ k }}----{{ v }}</p>
{% endfor %}
上一篇:hdu 2648 Shopping


下一篇:http2.0