dy-dashboard/vault/知识库/工作指南/训练记录/2026-06-23-新增弹窗文本记忆修复.md
2026-10-28 11:14:17 +08:00

22 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 修复新增弹窗文本记忆 + 后端崩溃
**日期:** 2026-06-23
**旭东 → OpenClaw:**
> 1、我新增数据弹窗里面还是有文本记忆
> 2、新增数据填写好点击保存之后,外面数据没有新的数据显示,出异常了
**OpenClaw 响应:**
排查发现两个问题:
1. **文本记忆**:上一轮提交(c865173)虽然声明了「所有输入框autocomplete=off」,但实际上只改了编辑弹窗,新增弹窗中的 12 个 `<input>` 和产品页的 3 个筛选框都没有加 `autocomplete="off"`。已全部补加(commit ff0a1e8)。
2. **保存异常(后端崩溃)**:Gunicorn 服务于 17:21 开始崩溃循环(已重启 1900+ 次),日志显示 `Address already in use`——端口 18888 被旧进程占用导致新进程无法启动。旧进程 (PID 203395) 一直跑着旧代码,导致新增产品的 API 调用要么失败、要么用旧逻辑处理。已杀死所有旧进程并重启 systemd 服务恢复正常。
3. **第二轮修复**(commit 1d0b8b3):版本号 v306→v307,同步 Service Worker 缓存版本(v4→v5)。此前 SW 预缓存了 app.js?v=200,浏览器可能加载了旧版本 JS,导致新增弹窗保存逻辑异常。已强制刷新浏览器缓存。
4. **第三轮修复——开发专员保存后不显示**(commit 2eb8852):后端列表查询写了 `p.developer AS 开发专员`(中文别名),但前端 PROD_COLUMNS 定义的是 `field: 'developer'`。保存时数据库写入正确(开发者字段有值),但列表查回来时 key 是 `开发专员`,前端用 `r['developer']` 取不到值,导致新商品里开发专员始终为空。已改为 `p.developer`(无别名),前后端字段名统一。
**教训**:数据库字段名与前端字段名必须完全一致,不能用中文别名串改 JSON key。