先说结论
在 Odoo 里,followers 并不只是“有人手工点了关注”那么简单。
很多时候,系统会根据业务动作自动把某些人加进来。
所以很多人遇到的疑问其实是:
这个对象为什么会自动把某些参与者视为应该持续接收后续消息的人。
这正是 followers 自动订阅机制的核心。
为什么这个问题经常让人觉得像 bug
因为表面现象非常直观:
- 我没点关注
- 这个人为什么在 followers 里?
- 为什么他会收到后续消息?
于是很容易怀疑:
- Chatter 又自己乱加人了
但更常见的现实是:
- 系统认为这个人已经成为这条业务对象的重要参与者
- 所以后续消息默认应该持续通知到他
所以这通常不是乱加,而是参与关系被自动识别了。
follower 更像什么
它更像:
业务对象的后续消息订阅者。
也就是说,follower 不是单次通知对象,而更像:
- 从现在开始,这个人应持续收到这条业务对象相关动态
所以它关注的是长期订阅关系,而不是一次性提醒。
为什么自动订阅特别常见
因为很多业务流程里,系统知道某些角色天然重要:
- 当前客户联系人
- 当前负责人
- 某个被指派人
- 某个关键业务参与者
如果每次都要人手动加关注,协同成本会很高。
所以 Odoo 才会在某些动作里自动建立 follower 关系。
为什么这和“发了一条消息”不是同一回事
因为“发消息”只说明这次发送了内容; 而“成为 follower”说明的是:
- 之后这条业务对象继续更新时,你也可能持续被纳入通知范围。
一个更像瞬时动作,一个更像持续关系。
这也是为什么 followers 问题必须按“订阅边界”去看,而不能只按“本次通知”去看。
实战里最容易踩的 5 个坑
1. 把 follower 当成一次性收件人理解
会误读它的持续性。
2. 看到自动订阅就直接当成 bug
很多时候其实是协同设计。
3. 不理解哪些业务动作会触发自动加关注
后续排查会很被动。
4. 只看本次消息发送,不看订阅关系是否被建立
会漏掉根因。
5. 把“谁应该持续知道后续变化”这件事设计得太随意
后面消息噪音会很重。
一句话记忆法
把它记成一句话:
follower 不只是“这次通知谁”,更是“后续这条业务对象的变化谁应该持续知道”;自动订阅就是系统在自动建立这种持续关系。
理解这一句,很多 Chatter 问题就不会再显得很随机。
DISCUSSION
评论区