1.前言
首先感谢大家浏览我的博客,这博客是flask web开发这本书的历程,这是一个完整的大项目,本次是从小的知识点一步步到完成最后的项目,再次提醒本次使用的版本为python3.7,flask0.10,若想看1.0以后版本可以留言感谢大家的浏览,谢谢!(本次博客会每天实时更新,每天进步一点点),因为本人经常使用django2.0所以有些基础的注释不会写入,抱歉,大家有问题可以留言。
最后送给大家一句话:最好学编程的时间是十年前,其次就是现在!
2.程序的基本结构
pip install flask==0.10
2.1初始化
所有的flask都需要创建一个实例。
from flask import Flask
app = Flask(__name__)
2.2路由和视图函数
使用装饰器@app.route()
@app.route('/')
def index():
return '<h1>hello world</h1>'
大家在网站上经常会看到www.facebook.com/<你的姓名>这种地址,这个姓名就是一个动态的地址
@app.route('/user/<name>')
def user(name):
return '<h1>hello, {0}!</h1>'.format(name)
2.3启动服务器
注意注意,该方法不能在生产环境中使用,也就是不能直接在服务器运行该指令
if __name__ == '__main__':
app.run(debug=True)
2.4完整的demo程序
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>hello world</h1>'
@app.route('/user/<name>')
def user(name):
return '<h1>hello, {0}!</h1>'.format(name)
if __name__ == '__main__':
app.run(debug=True)
运行效果为
2.5请求-响应循环
目前你可能看不懂,不要紧继续看下去,现在不懂没事,本博客有大量例子,能让你明白这些如何使用
flask全局变量
from flask import request
变量名 | 说明 |
---|---|
current_app | 激活程序的程序实例 |
g | 临时存储的对象,每次请求重设这个变量 |
request | 封装了http内的请求 |
session | 用户会话, 需要记住 值的词典 |
请求钩子
before_first_request:注册一个函数,处理第一个请求之前运行
before_request:注册一个函数, 每次请求之前运行
after_request: 没有异常,请求结束后运行
teardown_request: 即使有异常,请求结束后运行
2.6 使用flask-script支持命令行选项
pip install flask-script
from flask import Flask
from flask.ext.script import Manager
app = Flask(__name__)
manager = Manager(app)
@app.route('/')
def index():
return '<h1>hello world</h1>'
@app.route('/user/<name>')
def user(name):
return '<h1>hello, {0}!</h1>'.format(name)
if __name__ == '__main__':
# app.run(debug=True)
manager.run()
使用命令行运行
python hello.py runserver --host 0.0.0.0
直接ipconfig 看自己ip
ip:5000