Flask 教程

Flask 第一个应用

欢迎来到 Flask 的世界!我们将通过构建一个最简单的“Hello World”应用,来理解 Flask 的核心工作流程。

📂 第一步:准备项目文件

  1. 在你的项目文件夹中(确保已激活虚拟环境),创建一个名为 app.py 的文件。
  2. 将以下代码复制并粘贴到 app.py 中:
纯文本
plaintext
from flask import Flask

# 1. 创建 Flask 应用实例
# __name__ 是一个 Python 内置变量,代表当前模块的名字。
# Flask 用它来确定静态文件和模板的根目录位置。
app = Flask(__name__)

# 2. 定义路由 (Route)
# @app.route('/') 是一个装饰器,它告诉 Flask:
# 当用户访问网站的根路径 '/' 时,执行下面的函数。
@app.route('/')
def hello_world():
    # 3. 返回响应
    # 视图函数必须返回一个字符串、HTML 或响应对象。
    return 'Hello, World! This is my first Flask app.'

# 4. 启动开发服务器
# if __name__ == '__main__' 确保只有直接运行此脚本时才启动服务器,
# 而不是在被其他模块导入时启动。
if __name__ == '__main__':
    # debug=True 开启调试模式:
    # 1. 代码修改后自动重载服务器
    # 2. 出现错误时在浏览器显示交互式调试器
    app.run(debug=True)

🚀 第二步:运行应用

在终端中,确保你位于 app.py 所在的目录,并且虚拟环境已激活(提示符前有 (venv)),然后运行:

纯文本
plaintext
python app.py

你将看到类似以下的输出:

纯文本
plaintext
 * Serving Flask app 'app'
 * Debug mode: on
WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://127.0.0.1:5000
Press CTRL+C to quit
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 123-456-789

🌐 第三步:在浏览器中查看

打开你的 Web 浏览器(Chrome, Firefox, Edge 等),在地址栏输入:

纯文本
plaintext
http://127.0.0.1:5000/

或者:

纯文本
plaintext
http://localhost:5000/

你应该会在页面上看到:

Hello, World! This is my first Flask app.

🎉 恭喜!你已经成功运行了第一个 Flask 应用。


🔍 代码核心概念解析

1. Flask(__name__)

这是 Flask 应用的入口点。__name__ 帮助 Flask 找到资源(如模板和静态文件)的位置。如果你把文件命名为 app.py__name__ 就是 'app'

2. @app.route('/')

这叫做路由装饰器。它将 URL 路径绑定到 Python 函数。

  • / 代表根目录。
  • 如果你改成 @app.route('/hello'),你就需要访问 http://127.0.0.1:5000/hello 才能看到内容。

3. app.run(debug=True)

  • 开发阶段:务必开启 debug=True。它让你每次保存代码后无需手动重启服务器,且报错信息非常详细。
  • 生产环境:部署到服务器时,必须关闭 debug 模式,并使用专业的 WSGI 服务器(如 Gunicorn 或 uWSGI)。

🛠️ 常见小实验

尝试修改代码,看看会发生什么:

  1. 修改返回内容
    'Hello, World!...' 改为 'Welcome to Flask!',保存文件,刷新浏览器(无需重启服务器,因为开启了 debug 模式)。
  2. 添加新路由
    hello_world 函数下方添加:
纯文本
plaintext
   @app.route('/about')
   def about():
       return '<h1>About Page</h1><p>This is a simple Flask tutorial.</p>'

访问 http://127.0.0.1:5000/about 查看效果。注意这里我们返回了 HTML 标签,Flask 会自动将其渲染为网页。

  1. 尝试访问不存在的路径
    访问 http://127.0.0.1:5000/notfound,你会看到 Flask 默认的 404 Not Found 页面。

⏭️ 下一步

现在你已经理解了基本的请求-响应循环。接下来,我们可以学习如何:

  • 动态路由:如何在 URL 中传递参数(如 /user/john)。
  • HTTP 方法:如何处理 POST 请求(如表单提交)。

你想继续哪一部分?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注