Python——Flask框架——模板
一、渲染模板
render_template 函数把Jinja2模板引擎集成到程序中
二、Jinja2变量过滤器
过滤器名 | 说明 |
safe | 渲染值是不转义 |
capitalize | 把值得首字母转换成大写,其他字母转换成小写 |
lower | 把值转换成小写形式 |
upper | 把值转换成大写形式 |
title | 把值中每个单词的首字母都转换成大写 |
trim | 把值的首位空格去掉 |
striptags | 渲染之前把值中所有的HTML标签都删掉 |
**使用super()获取原来的内容。如何使用?
三、Flask扩展框架——Flask-Bootstrap
(1)Bootstrap是客户端框架,服务器需要做的只是提供引用了Bootstrap层叠样式表(CSS)和JavaScript文件的HTMl响应,并在HTMl、CSS和JavaScript代码中实例化所需要的组件
(2)安装:pip install flask-bootstrap
from flask.ext.bootstrap import Bootstrap
#...
bootstrap = Bootstrap(app)
(3)继承模板
{% extends "bootstrap/base.html" %}
(4)Flash-Bootstrap模块中定义的块
块名 | 说明 |
doc | 整个HTML文档 |
html_attribs | <html>标签属性 |
html | <html>标签中的内容 |
head | <head>标签中的内容 |
title | <title>标签中的内容 |
metas | 一组<meta>标签 |
styles | 层叠样式表定义 |
body_attribs | <body>标签的属性 |
body | <body>标签的内容 |
navbar | 用户定义的导航条 |
content | 用户定义的页面内容 |
scripts | 文档底部的JavaScript声明 |
四、自定义错误页面
@app.errorhandler(404)
def page_not_found(e):
return render_template('404.html'),404 @app.errorhandler(500)
def internal_server_error(e):
return render_template('500.html'),500
五、链接(如导航条)
Flask提供 url_for() 辅助函数,它可以使用程序URl映射中保存的信息生成URL。
(1)绝对地址 :url_for('index',_external=True) 返回的地址:127.0.0.1:5000
(2)动态地址: url_for('user',name='john',_external=True) 返回的地址:127.0.0.1:5000/user/john
六、Flask-Moment本地化日期和时间
(1)在浏览器中渲染日期和时间
(2)安装: pip install flask-moment
from flask.ext.moment import Moment
moment = Moment(app)
(3)导入html内容,引用moment.js库
{% block scripts %}
{{super()}}
{{moment.include_moment()}}
{% endblock %}
format('LLL') 根据客户端电脑中的时区和区域设置渲染日期和时间。format() 函数还可以接受自定义格式说明符。
Flask-Moment 实现了 moment.js 中的 format() , fromNow() , formTime() , calendar(), valueof() , unix() 方法
参考文档: http://momentjs.com/docs/#/displaying
(4)使用语言代码传给 lang() 函数显示多种语言
{{ moment.lang('es') }}
Python——Flask框架——模板的更多相关文章
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)
#3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...
- Linux ubantu中安装虚拟/使用环境virtualenv以及python flask框架
今天学习了python flask框架的安装过程以及使用案例,感觉网上讲的东西都没有从我们这种初学者的角度去考虑(哈哈),最后还是奉上心得: 1.安装virtualenv $ sudo apt-get ...
- python flask框架学习——开启debug模式
学习自:知了课堂Python Flask框架——全栈开发 1.flask的几种debug模式的方法 # 1.app.run 传参debug=true app.run(debug=True) #2 设置 ...
- python flask框架学习(二)——第一个flask程序
第一个flask程序 学习自:知了课堂Python Flask框架——全栈开发 1.用pycharm新建一个flask项目 2.运行程序 from flask import Flask # 创建一个F ...
- python flask框架学习(一)——准备工作和环境配置与安装
Flask装备: 学习自:知了课堂Python Flask框架——全栈开发 1.Python版本:3.6 2.Pycharm软件: 3.安装虚拟环境: (1)安装virtualenv: pip ins ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (II)
#3使用html+css+js制作网页 番外篇 使用python flask 框架 II第二部 0. 本系列教程 1. 登录功能准备 a.python中操控mysql b. 安装数据库 c.安装mys ...
- Python Flask框架路由简单实现
Python Flask框架路由的简单实现 也许你听说过Flask框架.也许你也使用过,也使用的非常好.但是当你在浏览器上输入一串路由地址,跳转至你所写的页面,在Flask中是怎样实现的,你是否感到好 ...
- Python Flask框架
Python有很多Web框架,可谓是百家争鸣,我这里列出几个比较叼的几个框架 Django 市场占有率最高,官方文档几近完美,但是适合比较大的项目,小项目会显得累赘. Tornado ...
- python flask框架详解
Flask是一个Python编写的Web 微框架,让我们可以使用Python语言快速实现一个网站或Web服务.本文参考自Flask官方文档, 英文不好的同学也可以参考中文文档 1.安装flask pi ...
随机推荐
- 已使用.netframework,version=v4.6.1 而不是目标框架netcoreapp,version=v2.1 还原包,此包可能与项目不完全兼容
已使用.netframework,version=v4.6.1 而不是目标框架netcoreapp,version=v2.1 还原包,此包可能与项目不完全兼容 NU1202: 包 System.Run ...
- classmethod 和 staticmethod
我一般很少用到. Talk is cheap, show you the code. #!/usr/bin/env python # -*- coding: utf-8 -*- ########### ...
- Floyed
1.定义 可解任意两点间的最短路径 可判有向图或负权的最短路径问题,也可用于计算有向图的传递闭包 2.算法描述 简单点说,就是暴力遍历 时间复杂度O(n^3) 下面是简简单单的代码: #include ...
- 【原创】Mysql中select的正确姿势
引言 大家在开发中,还有很多童鞋在写查询语句的时候,习惯写下面这种不规范sql select * from table 而不写成下面的这种规范方式 select col1,col2,...,coln ...
- .net core实践系列之短信服务-架构设计
前言 上篇<.net core实践系列之短信服务-为什么选择.net core(开篇)>简单的介绍了(水了一篇).net core.这次针对短信服务的架构设计和技术栈的简析. 源码地址:h ...
- Redux与它的中间件:redux-thunk,redux-actions,redux-promise,redux-saga
序言 这里要讲的就是一个Redux在React中的应用问题,讲一讲Redux,react-redux,redux-thunk,redux-actions,redux-promise,redux-sag ...
- CISCO交换机-SNMP配置
1.1 SNMP基础配置 router> enable 进入路由器是用户模式 router# conf terminal 进入路由器的全局配置模式 #snmp-server commun ...
- 第十二次oo作业
作业十二 规格化设计简介 规格化设计的发展历史 1950年代,第一次分离,主程序与子程序的分离结构是树状模型,子程序可先于主程序编写.通过使用库函数来简化编程,实现最初的代码重用.产生基本的软件开发过 ...
- 容器互联(linking)
容器互联(linking)是一种让多个容器中的应用进行快速交互的方式. 它会在源和接受容器中间创建连接关系,接受容器可以通过容器名快速访问到源容器而不用指出具体的IP地址.
- nginx 之 proxy_redirect详解
proxy_redirect 语法:proxy_redirect [ default|off|redirect replacement ] 默认值:proxy_redirect default 使 ...