1、什么是Web框架
2、常用的Web框架
3、安装虚拟环境
(1) 在cmd窗口下安装virtualenv
执行命令:pip install virtualenv
卸载virtualenv,重新安装:
执行:pip3 uninstall virtualenv
重新安装,执行:pip install virtualenv
查看安装的版本:virtualenv --version
创建虚拟环境:
1、首先进入文件目录:
创建Flask文件夹:mkdir Flask
创建虚拟文件:virtualenv venv
创建出来的文件如下:
启动虚拟命令:venv\Scripts\activate
查看包:pip list
(1) 在cmd窗口下安装flask
执行命令:pip install flask
查看安装包:pip list
4、第一个Flask程序
示例输出:Hello World
具体代码实现:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
程序运用,控制台打印信息:
访问:http://127.0.0.1:5000/
5、开启调试模式
编写通常helloworld代码:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run()
运行程序,控制台打印信息并访问:
开启调试模式添加参数:
6、路由
添加一个路由请求,具体代码实现:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/index')
def index():
return 'this is index'
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
变量规则
示例:根据参数输出相应的信息
具体代码实现:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return 'User %s' % username
@app.route('/index')
def index():
return 'this is index'
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
路由传递参数:
具体代码实现:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return 'User %s' % username
@app.route('/post/<int:post_id>')
def show_post(post_id):
# 根据ID显示文章,ID是整型数据
return 'Post %d' % post_id
@app.route('/index')
def index():
return 'this is index'
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
构造URL
添加构造URL数据:
具体代码实现:
from flask import Flask, url_for
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return 'User %s' % username
@app.route('/post/<int:post_id>')
def show_post(post_id):
# 根据ID显示文章,ID是整型数据
return 'Post %d' % post_id
@app.route('/url/')
def get_url():
# 根据ID显示文章,ID是整型数据
return url_for('show_post',post_id=2)
@app.route('/index')
def index():
return 'this is index'
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
常用方法:
新增注册功能:
from flask import Flask, url_for, request
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return 'User %s' % username
@app.route('/post/<int:post_id>')
def show_post(post_id):
# 根据ID显示文章,ID是整型数据
return 'Post %d' % post_id
@app.route('/url/')
def get_url():
# 根据ID显示文章,ID是整型数据
return url_for('show_post',post_id=2)
@app.route('/index')
def index():
return 'this is index'
@app.route('/login',methods=['POST','GET','PUT'])
def login():
if request.method =='GET':
return '这是get请求'
elif request.method =='POST':
pass
else:
pass
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
7、静态文件
创建文件如下:
具体代码实现:
from fileinput import filename
from flask import Flask, url_for, request
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World,FLASK12!'
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return 'User %s' % username
@app.route('/post/<int:post_id>')
def show_post(post_id):
# 根据ID显示文章,ID是整型数据
return 'Post %d' % post_id
@app.route('/url/')
def get_url():
# 根据ID显示文章,ID是整型数据
return url_for('static', filename("static/css/style.css"))
# return url_for('show_post',post_id=2)
@app.route('/index')
def index():
return 'this is index'
@app.route('/login',methods=['POST','GET','PUT'])
def login():
if request.method =='GET':
return '这是get请求'
elif request.method =='POST':
pass
else:
pass
if __name__ == '__main__':
app.run(debug=True)
启动程序,运行:
待解决!
8、模板
首先在项目里创建templates文件夹,并在templates文件夹创建:index.html、user.html文件
编写:
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>
user.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>Hello, {{ name }}!</h1>
</body>
</html>
接着,创建render.py类
代码编写:
render.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return render_template('index.html')
@app.route('/user/<username>')
def show_user_profile(username):
# 显示该用户名的用户信息
return render_template('user.html', name=name)
if __name__ == '__main__':
app.run(debug=True)
运行程序,控制台输出
访问url:http://127.0.0.1:5000/
待解决!