先把这条内容指定为唯一“主记录”,其他栏目只保存引用或轻量摘要,并让引用位置随主记录更新。判断标准不是它出现在几个栏目,而是同一字段是否有两个可编辑入口:只要标题、正文、图片、附件中任意一项能在两个地方独立修改,就已经失去单一来源。
很多维护问题不是出在复制,而是出在把不同用途的内容误当成同一份。可以按字段判断:
先做这一步,是因为后面所有规则都依赖“哪些字段必须同源”。如果连字段边界都没分清,直接上同步机制,往往会把本应独立的内容也绑死。
假设手里有一篇介绍本地服务的文章,同时出现在首页推荐、服务栏目和资讯栏目。可以按下面顺序处理:
动作的结果会直接决定下一步:如果引用后列表页仍能单独编辑正文,说明引用只是表面复制,需要把该字段从栏目表单中移除;如果移除后编辑无法完成日常推荐位调整,说明栏目还需要保留摘要和排序字段,而不是保留整篇正文。
只有两三个栏目、一两个人维护时,靠“改完记得通知对方”通常能撑住。样本一旦扩大,例外会集中在三类地方:
这些现象只能说明当前流程缺少同源约束,不能单独证明某次改动一定正确或错误。要区分原因,可以查三个证据:同一字段是否存在两个编辑入口、最近一次修改记录来自哪个入口、引用位置是否保存了字段副本。三者指向不同问题时,处理方式也不同。
可执行的收口方式通常包含三层:
假设某栏目需要一段与正文不同的推荐语,可以保留该字段,但要限定长度和用途;当主记录标题变化时,推荐语不自动跟随,这是有意保留的例外,而不是同步失败。边界在于:只要推荐语开始承载正文事实,它就应该回到主记录,而不是继续留在栏目里。
在改动结构前,先列出每个栏目当前保存了哪些字段,并标出哪些与主记录重复。优先处理正文、标题、附件这类高冲突字段;摘要、排序、标签可以暂时保留。迁移后验证两件事:从任一栏目入口修改正文是否会被拒绝或跳转到主记录;主记录更新后,各栏目是否只更新引用部分。若这两点成立,单一来源才算落到可维护状态,后续再处理历史副本和旧入口。