使用Flask快速开发WEB应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

使用Flask快速开发WEB应用

Flask微型框架入门笔记

目录\o系统根据文章中H1到H6标签自动生成文章目录(?)\o收起[-]

例程

特点

安装

代码段

例程:

fromflaskimportFlask

app=Flask(__name__)#新建一个Flask可运行实体(名字参数如果是单独应用可以使用__name__变量,如果是module则用模块名)

app.debug=True#可以通过此参数设置Flash的DEBUG模式参数

?

@app.route(/)#在运行实体上绑定URL路由

defhello():

??returnHelloWorld!

?

if__name__==__main__:

??app.run()#运行Flash实体,如果要让网络上的人也可以访问,运行app.run(host=’’)

?

?

特点:

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的代码:

\oWP-CodeBoxHowTo??ViewCode?PYTHON

[python]?\oviewplainviewplain\ocopycopy

span?style=color:rgb(128,128,128)em#!/usr/bin/env?python/em/span??

span?style=color:rgb(128,128,128)em#coding=utf-8/em/span??

__author__?=?span?style=color:rgb(72,61,139)kainwu/span??

???

span?style=color:rgb(128,128,128)em#导入Flask/em/span??

span?style=color:rgb(255,119,0)strongfrom/stro

文档评论(0)

192****5507 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档