flask Template
- 包括两个部分:
- 1.静态HTML
- 2.动态插入的代码段
- 对比一下 thymeliphy or struct2 一样的事情
变量和标签
变量:
{{ var}}
- 变量不存在,默认忽略
操作(标签)
{% tag %}
- 控制逻辑
- 使用外部表达式
- 创建变量
- 宏定义(函数新加)
使用:
- for(for后面能够接else)(python里面可以)
- for标签下面又loop(迭代器)first,last,index等等
- index从1开始,index0从0开始计数。
- if
{$ if a==b $}
pass
{$endif$}
结构标签
-
extends:
拿出一个通用的html混合片段。
写一个html里面挖好坑,放好block,等着后面去填; -
填和写的语法类似
{% block xx%}
{%endblock%}
如果不覆盖之前写好的部分,那就使用{{super()}}
- include: 将小的html片段加到里面来
- 宏定义:在模版中定义一些函数来生成html
{%macro fuctionname(parameter)%}
{%endmacro%}
// 在不同文件调用:
{% from' ' import functionname %}
mvc mvp mvvm(双向绑定)
过滤器:
- lower
- capitalize
- upper
- reverse
- 支持自定义过滤器
flask-bootstrap
- 安装,初始化对象 Bootstrap 很方便的使用bootstrap的组建。
- 相当于在模版上自己加东西:十分方便快捷
- {%extends ‘bootstrap/base.html’%}
属性:
-
html_attribs:给整个html添加属性
-
html:
- head
- title(defeat)
- metas
- styles
- body_attribs
- body
- navbar
- content
- scripts
- head
-
也针对ie8,谷歌,分页也有一些基础页面;
总结回顾:
flask:
- views
request对象;
- 一些属性:
response对象;
abort终止
钩子函数:errorhander app所在的路由(全局) 和 蓝图路由(本蓝图) 注册的区别;
render_template:将模版渲染成html字符串
会话技术:其实就是来的时候给你发个令牌认识你,之后你每次访问都带上这个令牌。
- cookie
- session:
falsk中处理;存储在了cookie中(序列化完,还是存储在客户端)
flask-session: 将session数据存储在数据库 or 文件系统中;
- Template:
结构标签:
- block
- extends
- include
- macro:在html中定义函数
过滤器: 可以多个过滤器;
flask-bootstrap: 继承bootstrap
- 为开发者提供了一些默认的模版,并且可以使用他的一些组建