Flask模块如何使用
Flask 是一个轻量级的 Python Web 框架,以其简洁性和灵活性著称。以下是一些关键点和使用方法:
安装 Flask
通过 pip 安装 Flask:
pip install flask
创建基本应用
创建一个简单的 Flask 应用:
from flask import Flask
app = Flask(__name__)@app.route('/')
def home():return 'Hello, Flask!'if __name__ == '__main__':app.run(debug=True)
路由与视图
定义路由和视图函数:
@app.route('/about')
def about():return 'About Page'
模板渲染
使用 Jinja2 模板引擎渲染 HTML:
from flask import render_template@app.route('/user/<name>')
def user(name):return render_template('user.html', name=name)
静态文件
将静态文件(如 CSS、JS)放在 static
文件夹中,通过 URL 访问:
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
请求处理
处理表单数据:
from flask import request@app.route('/login', methods=['GET', 'POST'])
def login():if request.method == 'POST':username = request.form['username']return f'Hello, {username}!'return render_template('login.html')
重定向与 URL 生成
使用 redirect
和 url_for
:
from flask import redirect, url_for@app.route('/admin')
def admin():return redirect(url_for('home'))
错误处理
自定义错误页面:
@app.errorhandler(404)
def page_not_found(error):return render_template('404.html'), 404
数据库集成
使用 Flask-SQLAlchemy 进行数据库操作:
from flask_sqlalchemy import SQLAlchemyapp.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db'
db = SQLAlchemy(app)class User(db.Model):id = db.Column(db.Integer, primary_key=True)username = db.Column(db.String(20), unique=True, nullable=False)
部署
使用 Gunicorn 或 Waitress 部署 Flask 应用:
gunicorn -w 4 -b 0.0.0.0:5000 app:app
Flask 的轻量级设计使其非常适合快速开发和原型设计,同时也支持通过扩展实现复杂功能。