一. 情景导入
场景:你刚刚入职“海经贸校园博客”研发部,担任 Python 初级开发助理。
项目背景:研发部决定使用轻量级的 Flask 框架来重构校园博客系统。你的带教导师给了你一个任务:在半天内搭建好开发环境,并让服务器成功“吐”出第一行欢迎语。
二、项目任务分解
任务序号 | 任务名称 |
任务一 | 初出茅庐——开发环境搭建与首个服务启动 |
任务二 | 栏目规划——动态路由与多路径映射 |
三. 分步任务实施
任务一:初出茅庐——开发环境搭建与首个服务启动
【导师与小白的对话】
小白:“导师,我已经安装好 Python 了,可以直接写代码了吗?”
导师:“别急。在职业开发中,‘环境一致性’是红线。你得先检查版本,然后在虚拟环境里精准安装 Flask。要是环境乱了,后期维护就是噩梦。去吧,先让浏览器显示出我们的实训欢迎语,证明你的‘地基’打稳了。”
二. 任务实施过程
1.环境审查与工程建立
(1)版本核验:打开终端输入 python --version,确保版本>=3.8(研发部统一标准)。
(2)工程初始化:在 PyCharm 中新建名为 HNJM_Blog_Project 的项目,并存放在C盘里已经建立好的flask课堂作业文件夹。
(3)目录规范:在项目根目录下手动创建 templates 文件夹(用于存放未来的 HTML 页面)。
2.虚拟环境配置
(1)框架安装:在 PyCharm 终端执行 pip install flask。
(2)依赖检查:执行 pip list 确认 Flask 及其核心依赖已成功进入你的“私人仓库”。
(3)编写“首个服务”逻辑
①主程序实现:创建 main.py,编写以下初始化代码:
from flask import Flask
app = Flask(__name__)
@app.route('/')def index():
return "Hello Flask! 欢迎进入Web编程开发实训"
if __name__ == '__main__':
app.run(debug=True)③服务挂载:运行程序,确保控制台未出现报错。
④交付验证:访问 http://127.0.0.1:5000/,截图保存成功响应的界面。
任务二:栏目规划——动态路由与多路径映射
【导师与小白的对话】
小白:“导师,我们要为每个学生都写一个路由函数吗?全校上万人,那代码量也太恐怖了!”
导师:“哈哈,那样学校早破产了。职业开发讲究‘以一当十’。你得学会用‘动态参数’来捕获用户名。另外,为了兼容老用户的习惯,咱们得给首页多设几个入口。这就是我们要做的‘路由分发’。”
二. 任务实施过程
1.实现动态“个人空间”
(1)需求分析:利用路由占位符 <username> 捕获 URL 中的学生姓名。
(2)编码实施:在 main.py 中追加以下逻辑:
@app.route('/user/<username>')
def user_info(username):
# 这里的 username 会自动接收 URL 中对应位置的内容
return f"欢迎你,{username}!这是你的专属页面"2.配置多路径映射(SEO 优化)
(1)需求分析:设置多个“马甲”路径,指向同一个首页函数。
(2)编码实施:使用装饰器叠加技术:
@app.route('/home')
@app.route('/index')
def home_page():
return "首页 - 可通过/home或/index访问"(3)系统集成测试
①路径 A 测试:访问 .../user/海经贸学生A,确认页面能正确打招呼。
②路径 B 测试:分别尝试 /home 和 /index,验证是否均能跳转至同一首页。
③鲁棒性验证:尝试不带参数访问 /user/(不输入名字),观察并记录系统反馈。
四、职业成果自查表
| 序号 | 考核维度 | 达成标准 | 状态 |
|---|---|---|---|
| 1 | 环境规范 | Python >=3.8 且 Flask 成功安装在虚拟环境 | □ |
| 2 | 代码规范 | app.py 结构完整,包含 if __name__ == '__main__': | □ |
| 3 | 动态交互 | URL 中的参数能实时渲染到页面中,无乱码 | □ |
| 4 | 路由逻辑 | 实现了“一函多路”,减少了冗余代码 | □ |


