Flask 基础与入门

person smartzeng    watch_later 2024-08-14 20:19:16
visibility 145    class Flask    bookmark 专栏

Flask 是一个轻量级的 Python Web 框架,适合快速开发 web 应用程序。下面是 Flask 基础与入门的概述,包括创建路由、处理请求和模板渲染。

1. 安装 Flask

首先,你需要安装 Flask。可以使用 pip 来安装:

pip install flask

2. 创建一个简单的 Flask 应用

首先,创建一个 app.py 文件,并编写基本的 Flask 应用代码。

from flask import Flask

app = Flask(__name__)

@app.route('/')
def home():
    return "Hello, Flask!"

if __name__ == '__main__':
    app.run(debug=True)

3. 路由与处理请求

路由是定义 URL 和处理函数之间的映射。上面的代码中,@app.route('/') 定义了一个路由,当访问根路径 / 时,将调用 home 函数并返回相应的内容。

你可以创建更多的路由来处理不同的请求。例如:

@app.route('/about')
def about():
    return "This is the about page."

动态路由

你还可以在路由中定义动态参数:

@app.route('/user/<username>')
def show_user_profile(username):
    return f"User: {username}"

4. 处理 POST 请求

Flask 也支持处理 POST 请求。你可以使用 methods 参数指定允许的请求方法。

from flask import request

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        username = request.form['username']
        return f"Welcome, {username}!"
    return '''
        <form method="post">
            <input type="text" name="username">
            <input type="submit" value="Login">
        </form>
    '''

5. 模板渲染

Flask 使用 Jinja2 作为模板引擎。你可以将 HTML 模板文件放在项目的 templates 文件夹中,然后使用 render_template 函数来渲染模板。

首先,创建一个 templates 文件夹,并在其中创建一个 index.html 文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Home</title>
</head>
<body>
    <h1>{{ title }}</h1>
    <p>{{ content }}</p>
</body>
</html>

然后,在 Flask 应用中使用这个模板:

from flask import render_template

@app.route('/')
def home():
    return render_template('index.html', title="Home Page", content="Welcome to Flask!")

6. 启动应用

运行 app.py

python app.py

打开浏览器访问 http://127.0.0.1:5000/,你将看到渲染的页面。

总结

通过以上步骤,你已经了解了 Flask 的基本用法,包括创建路由、处理请求和模板渲染。这些是构建 Flask 应用的基础。你可以进一步学习 Flask 的更多功能,例如数据库集成、表单处理、用户认证等。

评论区
评论列表
menu