问题
在讨论菜单中,您可以看到您的聊天记录。它们分组为:
如果我去任何频道并写任何东西,我可以看到我刚刚写的东西(就像可以阅读该频道的人一样)。这是正常行为,它应该与其他两个类别相同。但是,如果我在私人频道或发送直接消息时执行相同的操作,屏幕仍为空:我看不到我刚才写的内容以及收到消息的人。
我尝试解决这个问题
我将标准频道与私人频道进行了比较,两者的用户配置相同。
我检查过longpolling端口,但我认为这不是问题所在,因为如果是这样,那么没有任何频道可以工作。
我还更新了base
和mail
模块,没有结果。
老实说,我不知道该怎么做,这发生在一个特定的服务器上,在其他一些我一切正常。我试图比较所有,但它花了我很长时间,所以任何帮助将不胜感激。
答案 0 :(得分:0)
最后,我找到了解决方案:
每次创建新频道或向任何用户(聊天)发送直接消息时,都会在mail_channel
表格中生成记录。如果激活技术设置,可以通过界面查看它们,然后转到设置>技术>电子邮件>信道
在此模型中,有一个名为message_followers_ids
的字段,它是指向模型mail.followers
的One2many。
我的问题(由于我安装的第三方模块)导致频道创建时没有关注者,因此消息未显示。
例如,我创建了一个名为test
的新私人频道。创建它时,会在mail.channel
和mail.followers
模型中创建一条记录,但它们之间没有链接(它是在没有关注者的情况下创建的),因此,当我写一条消息时,我不是'能够看到它,看看mail.followers
记录:
id | partner_id | channel_id | res_model | res_id
------+------------+------------+--------------------------+--------
1037 | | | mail.channel |
但是,我已将mail.followers
中创建的记录添加到频道的message_followers_ids
字段中:
id | partner_id | channel_id | res_model | res_id
------+------------+------------+--------------------------+--------
1037 | | 65 | mail.channel | 65
在此之后,它再次开始正常工作。
作为一个好奇心,如果您有另一个名为replica
的频道,并且您将其设置为test
频道的关注者,则test
中写入的每条消息都会显示在replica
,但不是相反。