当前位置: 首页 > news >正文

免费自助建站系统吴江设计网站公司

免费自助建站系统,吴江设计网站公司,私募股权基金网站建设,大连seo加盟1.模板 在前面的示例中#xff0c;视图函数的主要作用是生成请求的响应#xff0c;这是最简单的请求。实际上#xff0c;视图函数有两个作用#xff1a;处理业务逻辑和返回响应内容。在大型应用中#xff0c;把业务逻辑和表现内容放在一起#xff0c;会增加代码的复杂度…1.模板 在前面的示例中视图函数的主要作用是生成请求的响应这是最简单的请求。实际上视图函数有两个作用处理业务逻辑和返回响应内容。在大型应用中把业务逻辑和表现内容放在一起会增加代码的复杂度和维护成本。本节学到的模板它的作用即是承担视图函数的另一个作用即返回响应内容。 模板其实是一个包含响应文本的文件其中用占位符变量表示动态部分告诉模板引擎其具体值需要从使用的数据中获取。使用真实值替换变量再返回最终得到的字符串这个过程称为“渲染”。Flask使用Jinja2这个模板引擎来渲染模板。Jinja2能识别所有类型的变量包括{}。 Jinja2模板引擎Flask提供的render_template函数封装了该模板引擎render_template函数的第一个参数是模板的文件名后面的参数都是键值对表示模板中变量对应的真实值。 Jinja2官方文档http://docs.jinkan.org/docs/jinja2/ 我们先来认识下模板的基本语法 {% if user %}{{ user }} {% else %}hello! ul{% for index in indexs %}li {{ index }} /li{% endfor %} /ul通过修改一下前面的示例来学习下模板的简单使用 app.route(/) def hello_itcast():return render_template(index.html)app.route(/user/name) def hello_user(name):return render_template(index.html,namename)变量 在模板中{{ variable }}结构表示变量是一种特殊的占位符告诉模板引擎这个位置的值从渲染模板时使用的数据中获取Jinja2除了能识别基本类型的变量还能识别{} p{{mydict[key]}}/pp{{mylist[1]}}/pp{{mylist[myvariable]}}/pfrom flask import Flask,render_template app Flask(__name__)app.route(/) def index():mydict {key:silence is gold}mylist [Speech, is,silver]myintvar 0return render_template(vars.html,mydictmydict,mylistmylist,myintvarmyintvar) if __name__ __main__:app.run(debugTrue)反向路由 Flask提供了url_for()辅助函数可以使用程序URL映射中保存的信息生成URLurl_for()接收视图函数名作为参数返回对应的URL 如调用url_for(index,_externalTrue)返回的是绝对地址在下面这个示例中是http://127.0.0.1:5000/index。 app.route(/index) def index():return render_template(index.html)app.route(/user/) def redirect():return url_for(index,_externalTrue)自定义错误页面 from flask import Flask,render_templateapp.errorhandler(404) def page_not_found(e):return render_template(404.html), 404 2 过滤器 过滤器的本质就是函数。有时候我们不仅仅只是需要输出变量的值我们还需要修改变量的显示甚至格式化、运算等等这就用到了过滤器。 过滤器的使用方式为变量名 | 过滤器。 过滤器名写在变量名后面中间用 | 分隔。如{{variable | capitalize}}这个过滤器的作用把变量variable的值的首字母转换为大写其他字母转换为小写。 其他常用过滤器如下 字符串操作 safe禁用转义 p{{ emhello/em | safe }}/pcapitalize把变量值的首字母转成大写其余字母转小写 p{{ hello | capitalize }}/plower把值转成小写 p{{ HELLO | lower }}/pupper把值转成大写 p{{ hello | upper }}/ptitle把值中的每个单词的首字母都转成大写 p{{ hello | title }}/ptrim把值的首尾空格去掉 p{{ hello world | trim }}/preverse:字符串反转 p{{ olleh | reverse }}/pformat:格式化输出 p{{ %s is %d | format(name,17) }}/pstriptags渲染之前把值中所有的HTML标签都删掉 p{{ emhello/em | striptags }}/p列表操作 first取第一个元素 p{{ [1,2,3,4,5,6] | first }}/plast取最后一个元素 p{{ [1,2,3,4,5,6] | last }}/plength获取列表长度 p{{ [1,2,3,4,5,6] | length }}/psum列表求和 p{{ [1,2,3,4,5,6] | sum }}/psort列表排序 p{{ [6,2,3,1,5,4] | sort }}/p语句块过滤(不常用) {% filter upper %}this is a Flask Jinja2 introduction{% endfilter %}自定义过滤器 过滤器的本质是函数。当模板内置的过滤器不能满足需求可以自定义过滤器。自定义过滤器有两种实现方式一种是通过Flask应用对象的add_template_filter方法。还可以通过装饰器来实现自定义过滤器。 自定义的过滤器名称如果和内置的过滤器重名会覆盖内置的过滤器。 实现方式一通过调用应用程序实例的add_template_filter方法实现自定义过滤器。该方法第一个参数是函数名第二个参数是自定义的过滤器名称。 def filter_double_sort(ls):return ls[::2] app.add_template_filter(filter_double_sort,double_2)实现方式二用装饰器来实现自定义过滤器。装饰器传入的参数是自定义的过滤器名称。 app.template_filter(db3) def filter_double_sort(ls):return ls[::-3]
http://wiki.neutronadmin.com/news/369449/

相关文章:

  • 站长工具seo综合查询5g国内十大云服务器商排名
  • 做网赌网站怎么推广拉人wordpress游客怎么发表文章
  • 深圳网站建设方案维护哪个网站推广产品好
  • 随州程力网站建设wordpress 请选择一个文件夹
  • 旅游网站建设的原因怎么做才能让网站人气提升
  • 网站上怎么做通栏的图片中国企业500强江阴有几家
  • 网站建设的颜色值深圳有多少家企业
  • 机电建设工程施工网站厦门seo大佬
  • 南宁网站建设找哪家公司网站开发与建设的原则
  • 创新的响应式网站建设深圳网站建设10强
  • 手机网站建设口碑好竞价排名规则
  • wordpress当下载站免费小程序模板
  • 小程序公众号网站建设酒店网站怎么做
  • 兰州网页制作公司网站网站的开发建设费
  • 十堰网站整站优化公司一个人做网站好做吗
  • 宁波网站推广联系方式网站维护公司
  • 应用制作器5g站长工具seo综合查询
  • wordpress全站链接团队建设优缺点
  • 太原网站搜索排名做进行网站推广赚钱
  • 西安哪里可以做网站sem是什么仪器
  • 百通互联网站建设河北视频网站建设
  • 怎么在58建设企业的网站做导航网站电脑设备
  • 手机版网站快照如何做网站搭建代理
  • 天津地区个人网站备案互联网舆情
  • iis做网站平面设计图案
  • 网站建设注意内容青岛建设局网站
  • 桌面软件开发跟网站开发那个镇江建站推广报价
  • 文化推广网站建设心得硬件开发和软件开发哪个工资高
  • 实验一html静态网站开发网络推广员工作内容
  • 网站开发项目宜昌网站建设哪个公司好