运行 Flask 应用程序

Salman Mehmood 2024年2月15日
运行 Flask 应用程序

通过这个解释,我们将学习如何在 Visual Studio Code 中设置 Flask 环境并创建 Flask 的基本应用程序。

创建一个基本的 Flask 应用程序

Flask 是 Python 的一个微型 Web 框架,也是著名的构建 Web 应用程序的框架。它还以创建 REST API 而闻名。

让我们开始工作吧;在开始之前,你必须确保你的机器上安装了 Python。如果需要安装,可以到 Python 官网下载最新版本,然后选择你的操作系统进行安装。

执行安装后,你必须检查是否已成功将 Python 安装到你的机器上。你可以转到命令提示符并键入以下命令。

python --version

如果你的 Python 版本正在显示,那么我们将使用 Python 库。我们使用 Visual Studio Code 是因为这是一个轻量级的编辑器,但你可以使用任何编辑器编写代码。

创建新文件夹后,我们将在该目录中打开 VS Code 环境。那么,创建虚拟环境,我们为什么需要创建虚拟环境呢?

虚拟环境就像你机器上的一个隔离环境;如果你在使用不同版本的库和依赖项的虚拟环境中使用 Python 脚本,则所有这些都存储在你机器上的一个容器化隔离环境中。

它不会干扰其他项目和系统设置,这就是为什么它在处理严肃项目时很有用。现在我们将继续设置我们的虚拟环境;我们需要按 Ctrl+` 来启动终端。

完成后,我们可以键入以下命令来安装虚拟环境模块。

pip install virtualenv

安装成功后,我们需要创建一个虚拟环境并使用 virtualenv envenv 是我们虚拟环境的名称。当我们创建一个虚拟环境时,我们需要给它命名。

接下来,我们需要激活环境或者进入环境;现在,我们将编写以下命令。

\env\Scripts\activate.bat

我们已经进入了我们的虚拟环境;如果你使用的是 Mac OS,请使用以下命令激活你的虚拟环境。

source env\bin\activate

现在我们可以继续使用以下命令安装 Flask。

pip install flask

成功安装 Flask 后,我们在这个与我们的机器分开的虚拟环境中进行了所有安装。我们需要创建我们的主应用程序;我们将其称为 app.py 文件。

我们将编写最基本的 Flask 应用程序来演示如何快速获取 Flask 应用程序并使其能够运行网页。

首先需要导入 Flask,所以第一个 Flask 是小写的,就是库,第二个是大写的,就是 Flask 的类。现在我们需要实例化这个 Flask 类和 app 等于 Flask(__name__) 引用当前应用程序的名称。

现在我们需要创建一个叫做路由的东西,它只是我们应用程序中特定网页的 URL 端点。我们将在这条路线@app.route('/') 中添加一个斜线,但你可以在此处添加任何你想要的内容。它可以是页面名称或端点名称。

然后定义一个函数,名称可以是任何你想要的,但你命名它是描述性的。在这种情况下,这是 index(),表示我们网站的基本 URL;然后,我们将编写一个返回字符串的 return 语句。

最后一件事是通过 Python 解释器运行应用程序; __name__=='__main__' 变量设置为 Python 文件的实际名称。这里的 if 语句确保服务器仅在脚本直接从 Python 解释器执行时运行。

我们跳到代码的最后一行;我们使用 run() 函数在我们的应用程序中运行本地服务器。

在我们的例子中,我们只是将 debug 设置为 True,所以这是一种了解错误的方法,但请记住,当你将 Flask 应用程序启动到生产环境中时,你总是必须设置 debugFalse

from flask import Flask

app = Flask(__name__)


@app.route("/")
def index():
    return "Hi there, this is our basic flask app"


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

现在我们可以继续通过键入如下所示的命令来启动我们的应用程序。当我们点击 Enter 并获得一个 localhost 地址时,我们需要将其复制并粘贴到我们放置 URL 的浏览器中。

输出:

创建一个基本的 Flask 应用程序

作者: Salman Mehmood
Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn