s1-cron-job-route.md
1014 Bytes
Plan: S1 - 新增 GET /cron/ 路由
目标
在 app.py 新增路由 @app.route("/cron/<job_id>"),渲染 cron_job.html 模板。
复用现有 _load_cron_jobs() 查找 job 信息。job 不存在返回 404。
涉及文件
app.py: 新增路由函数templates/cron_job.html: 模板(S2 创建,S1 只引用)
数据流
- Flask 接收
/cron/<job_id>GET 请求 - 调用
_load_cron_jobs()获取所有 job - 遍历查找 id 匹配的 job
- 找到 → render_template("cron_job.html", job=job)
- 未找到 → 返回 404
步骤
- RED: 写测试
test_s1_cron_route.py— curl /cron/ → 200, /cron/nonexistent → 404 - GREEN: 在 app.py 添加路由(在现有 /api/cron/logs/ 后面)
- REFACTOR: 确认无重复代码
- VERIFY: 运行测试 + smoketest
风险
- jinja2.exceptions.TemplateNotFound 如果 S2 还没创建模板 → S1 RED 时预计会看到此错误,这是预期 RED
- 需要知道至少一个真实 job ID 用于测试