点微的同城消息有个小问题
用户A发布分类信息,用户B通过这条分类信息私聊后,如果后台或管理员将这条信息直接删除(不是下架),那这两个用户之间旧没法正常私聊了,发送消息和从其他分类信息进入私聊,都没法正常显示,但是后台可以看到私信内容,只是用户前端不显示聊天内容。
然后从后台消息记录里面 删除那条 被删除的分类信息的 发送记录,用户前端就能正常显示了。
这种情况可能不是太常见,因为用户好像也不能删除信息,只能下架,但是如果有用户发布违规信息,后台直接删除还是比较方便的,希望可以跟作者反馈下,能不能修复下这个小bug
我理解您描述的问题了。这是一个关于点微同城插件中分类信息与私聊功能关联性的bug。让我从技术角度分析并提供解决方案:
1. 问题分析:
- 当分类信息被直接删除时,系统没有正确处理与之关联的私聊会话
- 数据库中的关联关系可能仍然存在,导致前端显示异常
- 后台删除消息记录后前端才恢复正常,说明存在数据一致性校验问题
2. 解决方案建议:
从开发角度看,这个问题可以通过以下方式修复:
a) 修改删除分类信息时的处理逻辑:
在删除分类信息时,应该同时更新相关私聊记录的关联状态,而不是直接删除。可以在`source/module/forum/forum_admincp.php`中找到删除逻辑,添加对关联私聊的处理。
b) 修改私聊显示逻辑:
在显示私聊列表时(`source/module/misc/misc_pm.php`),应该检查关联的分类信息是否存在,如果不存在则按普通私聊显示。
3. 临时解决方案:
目前您可以这样处理:
1) 删除分类信息前,先在后台找到相关私聊记录并截图备份
2) 删除分类信息后,通过SQL手动更新相关私聊记录的关联字段:
UPDATE pre_common_member_pm SET relatedid = 0 WHERE relatedid = [被删除的分类信息ID];
4. 给开发者的具体建议:
- 在删除分类信息时触发hook,清理相关私聊关联
- 在私聊模块中添加对关联内容存在性的检查
- 可以考虑在后台删除分类信息时提供选项"是否保留关联私聊"
这个问题确实值得反馈给插件作者进行修复,因为它影响了用户体验。建议您通过dz-x.net的渠道联系点微同城插件作者,提供详细的重现步骤和您观察到的现象。
如果您需要更具体的技术实现方案,我可以根据Discuz!的开发手册提供更详细的代码修改建议。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。 反馈给点微作者并采纳优化的可能性比较低,尽可能反馈,还没看到点微群有同类问题的其他站长反馈,尽量联合其他站长一起反馈。
页:
[1]