Jinja

flask基础之jijia2模板语言进阶(三)

隐身守侯 提交于 2020-04-27 12:18:01
前言 前面学习了jijia2模板语言的一些基础知识,接下来继续深挖jijia2语言的用法。 系列文章 flask基础之安装和使用入门(一) flask基础之jijia2模板使用基础(二) 控制语句 和python语言一样,模板语言也有自己的控制语句,比如条件语句、循环语句等等; 条件语句if {% if name and name == 'admin' %} <h1>This is admin console</h1> {% elif name %} <h1>Welcome {{ name }}!</h1> {% else %} <h1>Please login</h1> {% endif %} 循环语句for # 基本的for循环结构 {% for user in users %} <li>{{ user.username|e }}</li> {% endfor %} # 当for循环没有执行时使用else中代替 {% for user in users %} <li>{{ user.username|e }}</li> {% else %} <li><em>no users found</em></li> {% endfor %} # 去除空白,加-,注意%和-必须紧靠,否则无效; {% for digit in digits -%} {{ digit }} {%-

Flask开发微电影网站(一)

倾然丶 夕夏残阳落幕 提交于 2020-04-22 04:14:32
1.用到的Flask知识 1.使用整形,浮点型,路径型,字符串型下正则表达式路由转化器 2.使用GET与POST请求,上传文件,cookie获取与响应,404处理 3.使用模板自动转义,定义过滤器,定义全局上下文处理器,Jinja2语法,包含,继承,定义宏 4.使用flask-wtf定义表单模型,字段类型,字段验证,视图处理表单,模板使用表单 5.使用flask-sqlachemy定义数据库模型,对数据进行增删查改,数据迁移 6.使用蓝图优化项目结构,实现微电影网站前台与后台业务逻辑 7.flask部署,安装编译Nginx,安装Mysql服务以及通过Nginx反向代理对视频流媒体限制下载速率,限制单个IP能发起的播放连接数 2.用到的视频技术 1.jwplayer播放器插件 2.视频限速限IP访问 3.FLV,MP4视频格式支持 4.Nginx点播实现 3.环境说明: 开发系统:Win 7(与数据库虚拟机以NAT方式连接,IP地址为:192.168.81.3) python版本:3.6.3 开发工具:pycharm 专业版 数据库:MariaDB 5.5.56-Server 数据库所在系统:CentOS 7.4(IP地址为:192.168.81.10) 4.项目模型设计 使用Flask的蓝图Blueprint规划项目结构 使用Flask

使用Sanic开发快速异步响应的Web程序

丶灬走出姿态 提交于 2019-12-03 10:14:27
python学习笔记整理于猿人学网站的 python教程 和 python爬虫 Sanic是一个类似Flask、仅仅支持Python 3.5+ 版本的web 服务器,旨在运行速度更快。在类似Flask的基础上,Sanic支持异步请求处理,也就是说,你可以使用Python 3.5 中全新而又亮眼的 async/await 语法,使你的代码非阻塞且快速。 下面是一个最简单的Sanic Web 程序: from sanic import Sanic from sanic.response import json app = Sanic() @app.route("/") async def test(request): return json({"hello": "world"}) if __name__ == "__main__": app.run(host="0.0.0.0", port=8000) 以上代码显示了Sanic的基本用法: 全局生成一个Sanic对象:app = Sanic() Web路由由装饰器@app.route()管理,也可以通过url_for()、add_route()指定(详见文档) 请求响应函数用async声明进行异步处理,输入必须有request对象,返回response对象 Blueprint 如果网站很复杂,路由路径很多,全部写在一个文件里面会比较复杂