Flask是一个轻量级的Python Web框架,非常适合初学者和小型项目。以下是一个学习指南,帮助你从基础开始,逐步掌握Flask。
首先,确保你已经安装了Python和pip。然后,你可以通过以下命令安装Flask:
pip install Flask
创建一个名为 app.py
的文件,并添加以下内容:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run(debug=True)
运行这个应用:
python app.py
访问 http://127.0.0.1:5000/
,你应该会看到 “Hello, World!”。
Flask使用装饰器来定义路由。以下是一些示例:
@app.route('/')
def home():
return 'Home Page'
@app.route('/about')
def about():
return 'About Page'
@app.route('/user/<username>')
def show_user_profile(username):
return f'User {username}'
Flask使用Jinja2作为模板引擎。创建一个名为 templates
的文件夹,并在其中创建一个 index.html
文件:
<!doctype html>
<html>
<head>
<title>{{ title }}</title>
</head>
<body>
<h1>{{ message }}</h1>
</body>
</html>
在 app.py
中使用模板:
from flask import render_template
@app.route('/')
def home():
return render_template('index.html', title='Home', message='Hello, World!')
Flask提供了简单的表单处理功能。以下是一个示例:
from flask import request
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
username = request.form['username']
return f'Username: {username}'
return '''<form method="post">Username: <input type="text" name="username"><br>Password: <input type="password" name="password"><br><input type="submit" value="Login"></form>'''
Flask-SQLAlchemy是一个流行的扩展,用于在Flask中使用SQL数据库。安装Flask-SQLAlchemy:
pip install Flask-SQLAlchemy
在 app.py
中配置数据库并定义模型:
from flask_sqlalchemy import SQLAlchemy
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
Flask可以通过uWSGI或Gunicorn部署到生产环境。
以上步骤将帮助你开始学习Flask框架,并通过实践加深理解。记得动手敲代码,有问题随时在评论区问。祝你学习愉快!