在上一篇文章的最后简单介绍了下如何通过模板渲染传递int类型的参数,下文将介绍其他类型的如何传递。
@app.route('/showusers')
def show():
name='tuantuan'
#j=json.dumps(users)
friends=['沈巍','面面','龙龙']
return render_template('show.html',name=name,friends=friends)
信息展示
用户名是{
{name}}
{
{friends.0}}
{
{friends[0]}}
{
{friends[:2]}}
@app.route('/showusers')
def show():
name='tuantuan'
#j=json.dumps(users)
friends=['沈巍','面面','龙龙']
dict1={'apple':'red','gift':'pink','love':'pink'}
return render_template('show.html',name=name,friends=friends,dict1=dict1)
{
{dict1.gift}}
{
{dict1.get('apple')}}
class Girl:
def __init__(self,name,gender='女'):
self.name=name
self.gender='女'
def __str__(self):
return self.name
@app.route('/showusers')
def show():
goodone=Girl('aiyou')
return render_template('show.html',goodone=goodone)
{
{goodone}}---{
{goodone.gender}}
若直接goodone则默认返回__str__;若指定属性则返回指定的。
当直接输出对象时,如果定义了__str__(self),那么就会打印这个方法中return的值。(即对这个对象的描写)。
string,int,list,dict,对象,set,tuple均可以,这里不再一一做举例。
那么如何能够将展示的信息以表格的形式展现,接下来我们引入控制块。
这是单纯html网页使用的注释。
这是服务器能够识别的注释。
{# ul……li #}
@app.route('/showusers')
def show():
wawo=['haha','xixi','heihei','ye','luelue']
return render_template('show.html',wawo=wawo)
信息展示(控制块方法示例)
{% for wa in wawo %}
- {
{wa}}
{% endfor %}
指定长度大于4的字符串更改样式
哈哈小伙伴
信息展示(控制块方法示例)
{% for wa in wawo %}
- {
{wa}}
{% endfor %}
{% for wa in wawo %}
{% if wa|length>4 %}
- {
{wa}}
{% else %}
- {
{wa}}
{% endif %}
{% endfor %}
表格形式展示
{% for user in users %}
{
{user.name}}
{
{user.password}}
{% endfor %}
(以下先简写以下框架)
引入一些格式
LOOP的使用
过滤器其实就是对函数的使用
比如len()这种函数在html文件中即使加{ {}}但是依旧不支持,所以使用过滤器来达到同样的函数效果
在html文件中:{ {girl.append(“gg”)}}会导致返回值None,所以不建议增删改查在模板里去做,而是在后端做完处理后再模板渲染。
过滤器的使用方法:
{ {变量名|过滤器}}
常见过滤器:
1.safe:禁用转义
2.capitalize:首字母大写