Flask框架搭建

1、安装Flask

打开终端运行以下命令:

复制代码
pip install Flask

2、创建项目目录

在Windows上:

复制代码
venv\Scripts\activate

执行

3、创建 app.py 文件

可以在windows终端上创建app.py文件

(1)终端中创建

使用echo命令
复制代码
echo "from flask import Flask, render_template" > app.py
echo "app = Flask(__name__)" >> app.py
echo "" >> app.py
echo "@app.route('/')" >> app.py
echo "def home():" >> app.py
echo "    return 'Hello, Flask!'" >> app.py
echo "" >> app.py
echo "@app.route('/hello/<name>')" >> app.py
echo "def hello(name):" >> app.py
echo "    return render_template('hello.html', name=name)" >> app.py
echo "" >> app.py
echo "if __name__ == '__main__':" >> app.py
echo "    app.run(debug=True)" >> app.py

这段代码刚开始没这么复杂,主要先创建一个Flask项目添加模块并使用 render_template渲染模板

使用 cat 命令
复制代码
cat <<EOF > app.py
from flask import Flask, render_template

app = Flask(__name__)

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

@app.route('/hello/<name>')
def hello(name):
    return render_template('hello.html', name=name)

if __name__ == '__main__':
    app.run(debug=True)
EOF
使用 printf 命令
复制代码
printf "from flask import Flask, render_template\n" > app.py
printf "app = Flask(__name__)\n" >> app.py
printf "\n" >> app.py
printf "@app.route('/')\n" >> app.py
printf "def home():\n" >> app.py
printf "    return 'Hello, Flask!'\n" >> app.py
printf "\n" >> app.py
printf "@app.route('/hello/<name>')\n" >> app.py
printf "def hello(name):\n" >> app.py
printf "    return render_template('hello.html', name=name)\n" >> app.py
printf "\n" >> app.py
printf "if __name__ == '__main__':\n" >> app.py
printf "    app.run(debug=True)\n" >> app.py

虚拟环境可以帮助我们隔离项目依赖,避免与系统Python环境冲突。所以可以在项目根目录中创建一个虚拟环境:

复制代码
python -m venv venv

(2)激活虚拟环境

在Linux或macOS上:

复制代码
source venv/bin/activate

在Windows上:

复制代码
venv\Scripts\activate

(3)手动创建文件并写入代码

也可以使用记事本先编辑过后另存

然后另存为,找到C盘下的 my_flask_project 目录,文件命名为 app.py ,保存类型为所有文件

点击保存

这里定义了两个路由,先说一下路由

所谓路由,就是处理请求url和函数之间关系的程序,一个Web应用不同的路径会有不同的处理函数,当我们请求应用时,路由会根据请求的 url 找到对应处理函数。

基础路由定义

使用route()装饰器来把函数绑定到URL:

复制代码
@app.route('/')
def home():
    return 'Hello, Flask!'

动态url

Flask 支持在 url 中添加变量部分,使用<变量名>的形式表示,Flask 处理请求时会把变量传入视图函数,所以可以在试图函数内获取该变量的值。

复制代码
@app.route('/hello/<name>')
def hello(name):
    return render_template('hello.html', name=name)

4、创建templates文件夹

代码:

复制代码
HTMl

<!DOCTYPE html>
<html>
<head>
    <title>Hello</title>
</head>
<body>
    <h1>Hello, {{ name }}!</h1>
</body>
</html>

打开记事本,输入代码

另存为 my_flask_project 目录下的 templates 目录,命名为 hello.html ,保存类型也是所有文件

保存

5、运行Flask应用

然后打开终端运行以下命令启动Flask服务器

复制代码
python app.py

打开浏览器,访问 http://127.0.0.1:5000/ ,可以看到"Hello, Flask!"的页面信息;

访问 http://127.0.0.1:5000/hello/YourName 会看到一个动态生成的页面,显示"Hello, YourName!"。

6、最终项目目录

最终,创建的项目目录结构如下:

复制代码
my_flask_project/
│
├── app.py                # 主应用文件
├── templates/            # 存放HTML模板文件
│   └── hello.html        # 示例模板文件
├── venv/                 # 虚拟环境目录(可选)
相关推荐
一点程序5 分钟前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统
2401_832131958 分钟前
Python单元测试(unittest)实战指南
jvm·数据库·python
vx_BS8133040 分钟前
【直接可用源码免费送】计算机毕业设计精选项目03574基于Python的网上商城管理系统设计与实现:Java/PHP/Python/C#小程序、单片机、成品+文档源码支持定制
java·python·课程设计
gzxx2007sddx1 小时前
windows vnpy运行过程及问题记录
python·量化·vnpy
算法_小学生1 小时前
LeetCode 热题 100(分享最简单易懂的Python代码!)
python·算法·leetcode
230万光年的思念2 小时前
【无标题】
python
shengli7222 小时前
机器学习与人工智能
jvm·数据库·python
2301_765703142 小时前
Python迭代器(Iterator)揭秘:for循环背后的故事
jvm·数据库·python
怪兽源码2 小时前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统
追风少年ii2 小时前
多组学扩展---分子对接pyrosetta
python·数据分析·空间·单细胞