Python总结-----Flask框架

对比

Flask与Django对比

首先要从两个框架特点对比开始

Django:

django-admin 可以快速创建工程目录
manage.py 管理工程项目
orm 这是一个模型类,是一个抽象层的数据库,类似于iOS的Model、安卓的实体类和Java的Dto
admin 后台管理站

Flask:

路由,其他需要拓展包来完成
Flask-SQLalchemy操作数据库;
Flask-migrate管理迁移数据库;
Flask-Mail邮件;
Flask-WTF表单;
Flask-script插入脚本;
Flask-Login认证用户状态;
Flask-RESTful开发REST API的工具;
Flask-Bootstrap集成前端Twitter Bootstrap框架;
Flask-Moment 本地化日期和时间;

对比

Django 强大,太强大适用于大型商业项目
Flask 简单、灵活
因为是新手,所以说选简单的练手

Flask中文文档

安装

pip3 install Flask

基本使用

from flask import Flask #导入框架
app = Flask(__name__) #初始化Flask
@app.route('/') #添加路由
     def index(): #路由调用方法
        return 'Hello Word' #返回值
 if __name__ == '__main__':
     app.run(host='0.0.0.0', port=5011, debug=True,) #启动Flask

启动成功后控制台会打印

 * Serving Flask app "server" (lazy loading)
 * Environment: production
   WARNING: This is a development server. Do not use it in a production deployment.
   Use a production WSGI server instead.
 * Debug mode: off
 * Running on http://0.0.0.0:5011/ (Press CTRL+C to quit)

正常情况下可以调用 app.run()
host 参数为IP地址 当不设该置参数时 浏览器需要访问 127.0.0.1:5011即可 即可启动程序。当设该置参数为 0.0.0.0 时 在浏览器中访问本机IP地址加端口号即可,服务器 和开发设备同理

port 为端口号 当不设该置参数时 端口默认为 5000 ,如果使用阿里云服务器,别忘了放行端口

debug 是否开启debug模式

为什么罱要开启DEBUG模式:

  1. 如果开启了 DEBUG 模式, 那么在代码中如果抛出了异常,在浏览器的页面中可以看到具体的错误信息,以及具体的错误代码位置。方便开发者调试。

  2. 如果开启了 DEBUG 模式,那么以后在 Python 代码中修改了任何代码,只要按command + s , flask 就会自动的重新记载整个网站。不需要手动点击重新运行。

在其他文件添加路由

1. 调用

在开发中,每个模块有每个模块的划分,在意上手项目的时候,把所有路由全部放在了APP文件中,导致文件代码量过大,不方便阅读,所以就想分模块化去写路由

比如有一个用户模块,新建 user.py 文件,添加如下方法:

def login():
     return '登录成功'
 
 def add_user_routes(app):
 
     app.add_url_rule('/user/login', view_func=login)

app.py 中导入并使用即可

from login import add_user_routes

add_user_routes(app)

2. Blueprint(蓝图)

Blueprint 的使用大致分为三步

  1. 创建一个蓝图对象
  2. 在这个蓝图对象上进行操作,注册路由
  3. 在应用对象上注册这个蓝图对象

首先在 user.py 中创建蓝图对象,注册子路由。代码如下:

#1创建一个蓝图对象
from flask import Blueprint
#两个必要参数'user'蓝图名字;'__name__'蓝图所在的模块或者包,一般为'__name__'变量
user_blue = Blueprint("user",__name__)

#2注册路由
#@app.route('/user/login')改为下面代码 但是url为’/user/login‘才可访问’login()‘函数方法
@index_blue.route('/login')
def login():
    return '登录成功'

然后在应用对象上注册这个路由对象,也就是在 app.py 中添加如下:

#3.在应用对象上注册这个蓝图对象
from user import *
app.register_blueprint(user_blue)

其中注册路由中,有几个常用参数如下

static_folde 访问静态文件。使用/static_login/*** 访问static_login目录下的静态文件

index_blue = Blueprint("login",__name__,static_folder='static_login')

static_url_path 使用 static_url_path 来改变静态目录的路由。 访问路径为 /lib/***

index_blue = Blueprint("login",__name__,static_folder='static_login',static_url_path='/lib')

template_folder设置模板目录

index_blue = Blueprint('login',__name__,template_folder='my_templates')

今天先到这里

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342