Flask是一个用于Web应用程序的轻量级Python框架,它提供了URL路由和页面渲染的基础知识,同时被称为“微”框架,因为它不直接提供表单验证、数据库抽象、身份验证等功能。相反,这些功能由称为Flask扩展的特殊Python包提供。这些扩展与 Flask 无缝集成,因此它们看起来就像是 Flask 本身的一部分。例如,Flask 不提供页面模板引擎,但安装 Flask 默认包含 Jinja 模板引擎。为了方便起见,我们通常将这些默认值称为 Flask 的一部分。
sudo apt install python3-pip
brew install python3
在Windows上,确保Python解释器的位置包含在PATH环境变量中。
在本节中,您将创建一个安装 Flask 的虚拟环境。使用虚拟环境可以避免将 Flask 安装到全局 Python 环境中,并使您能够精确控制应用程序中使用的库。
在文件系统上,为本教程创建一个文件夹,例如hello_flask
在VSCode中打开此文件夹,方法是导航到终端中的文件夹并运行 ,或者运行VSCode并使用“文件>打开文件夹”命令。code .
在VSCode中,打开命令面板(查看>命令面板或 (Ctrl+Shift+P))。然后选择Python: Create Environment
命令以在工作区中创建虚拟环境。然后选择venv
要用于创建它的Python环境。
注意
如果要手动创建环境,或者在环境创建过程中遇到错误,请访问环境页面。
虚拟环境创建完成后,从命令面板运行终端:创建新终端 (Ctrl+Shift+')),这将创建一个终端并通过运行其激活脚本自动激活虚拟环境。
注意
在 Windows 上,如果默认终端类型为 PowerShell,则可能会看到一个错误,指出它无法运行 activate.ps1,因为在系统上禁用了运行脚本。该错误提供了有关如何允许脚本的信息的链接。否则,请使用终端:选择默认外壳将“命令提示符”或“Git Bash”设置为默认值。
通过在vscode终端中运行以下命令,在虚拟环境中安装 Flask:
python -m pip install flask
现在,您已经准备好编写 Flask 代码的独立环境。VS Code 会在使用“终端:创建新终端”时自动激活环境。如果打开单独的命令提示符或终端,请通过运行 (Linux/macOS) 或 (Windows) 来激活环境。当命令提示符在开头显示 (.venv) 时,您知道环境已激活。source .venv/bin/activate.venv\Scripts\Activate.ps1
在 VS Code 中,使用菜单中的“文件”>“新建”、按 Ctrl+N 或使用资源管理器视图中的新文件图标(如下所示)在项目文件夹中创建一个新文件app.py
在文件中添加代码以导入Flask并创建Flask对象的实例。如果键入下面的代码(而不是使用复制粘贴),则可以观察VSCode的智能感知和自动完成:app.py
from flask import Flask app = Flask(__name__)
同样在文件中添加一个返回内容的函数,在本例中为一个简单的字符串,并使用 Flask 的装饰器将 URL 路由映射到该函数:app.pyapp.route/
@app.route("/") def home(): return "Hello, Flask!"
提示
您可以对同一函数使用多个修饰器,每行一个,具体取决于要映射到同一函数的不同路由数。
在集成终端中通过输入回车来运行应用程序,这将运行 Flask 开发服务器。默认情况下,开发服务器会查找。运行 Flask 时,应看到类似于以下内容的输出:python -m flask runapp.py
相关信息
(.venv) D:\py\\hello_flask>python -m flask run
如果看到找不到 Flask 模块的错误,请确保已在虚拟环境中运行,如上一节末尾所述。python -m pip install flask
此外,如果要在不同的 IP 地址或端口上运行开发服务器,请使用主机和端口命令行参数,如 。--host=0.0.0.0 --port=80
若要打开默认浏览器以显示的页面,请按 Ctrl+单击终端中的 URL。http://127.0.0.1:5000/
请注意,当您访问类似 / 的 URL 时,调试终端中会出现一条消息,显示 HTTP 请求:
127.0.0.1 - - [11/Jul/2018 08:40:15] "GET / HTTP/1.1" 200 -
在终端中使用 Ctrl+C 停止应用。
提示
如果要使用与 不同的文件名,例如 ,请定义一个名为 FLASK_APP 的环境变量,并将其值设置为所选文件。然后,Flask 的开发服务器使用 FLASK_APP 的值而不是默认文件 。有关更多信息,请参阅 Flask 命令行界面。app.py program.py app.py
本文作者:来自火星
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!