预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共12页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

使用Flask快速开发WEB应用Flask微型框架入门笔记目录(?)[-]例程特点安装代码段例程:fromflaskimportFlaskapp=Flask(__name__)#新建一个Flask可运行实体(名字参数如果是单独应用可以使用__name__变量,如果是module则用模块名)app.debug=True#可以通过此参数设置Flash的DEBUG模式参数@app.route("/")#在运行实体上绑定URL路由defhello():return"HelloWorld!"if__name__=="__main__":app.run()#运行Flash实体,如果要让网络上的人也可以访问,运行app.run(host=’0.0.0.0’)特点:1:请求集中于一个本地线程Thread-Locals,方法调用无需传参,即可实现存取功能2:安全方面的问题要谨慎考虑3:出于安全考虑要严禁在Production环境设置DEBUG为True安装:Flash依赖两个库,分别是Werkzeug(一个WSGI工具集)和Jinja2(一个模板引擎)。代码段:传递URL参数@app.route(’/user/<username>’,methods=[’GET’])#不带参数转换器,默认为字符串defprofile(username):pass@app.route(’/post/<int:post_id>’)#带上参数转换器int,表示参数post_id是一个整型参数defpost(post_id):pass默认参数转换器有int,floatandpath注:可以通过url_for方法获取URL路径,如url_for('post',post_id=12),打印出来便是/post?post_id=12获取静态资源url_for(’static’,filename=’style.css’)#默认存放路径为app_path/static模板引擎returnrender_template(’hello.html’,name=name)#方式与django类似,查询地址在app_path/templates重定向returnredirect(url_for(’login’))自定义404错误@app.errorhandler(404)defpage_not_found(error):returnrender_template(’page_not_found.html’),404记录日志app.logger.warning(’Awarningoccurred(%dapples)’,42)Blueprint模块的应用上一篇里面讲到了怎样构建一个最小的Flask应用,这一篇的内容重写了WEB应用的框架,使用Blueprint来注册不同功能的模块。这一篇里我将会把网站功能分为两个部份,frontend为一些常用信息功能,admin为管理员功能。两个功能分别写入不同的PY文件里通过Blueprint注册成为网站功能绑定URL地址。先看一下文件结构:我用火影的名字作为文件名,哈哈:)这完全是个人爱好。最爱的OnePiece早就被我用于公司的项目,只能拿火影来用。sasuke作为项目名,是佐助的名字@_@现在来分析一下文件结构:naruto文件夹包含:文件夹:sasukePython包(WEB应用的所有内容)。文件:run.py管理整个WEB应用的运行。首先来看看run.py的代码:?ViewCodePYTHON[python]viewplaincopy<spanstyle="color:rgb(128,128,128)"><em>#!/usr/bin/envpython</em></span><spanstyle="color:rgb(128,128,128)"><em>#coding=utf-8</em></span>__author__=<spanstyle="color:rgb(72,61,139)">'kainwu'</span><spanstyle="color:rgb(128,128,128)"><em>#导入Flask</em></span><spanstyle="color:rgb(255,119,0)"><strong>from</strong></span>flask<spanstyle="color:rgb(255,119,0)"><strong>import</strong></span>Flask<spanstyle="color:rgb(128,128,128)"><em>#导入sasuke中的create_app</em></span><spanstyle="color:rgb(255,119,0)"><strong>from</str