J5lx
1
我运营的一个论坛大约在两年前从 bbPress 迁移到了 Discourse。自从几小时前进行最后一次更新后,我注意到大量用户突然被标记为可疑。这些用户都是从旧版 bbPress 论坛导入的,且自导入后从未登录过。我稍作调查后认为,此次变更可能是罪魁祸首:
我认为这些用户被标记是因为他们设置了网站/个人简介,且仅发布过一条帖子(由于是导入数据,他们的帖子阅读数也仅为 1)。
鉴于我们社区的特性,以及该社区在切换到 Discourse 之前已存在多年,我们有很多此类用户,现在正堆积在审核队列中。是否有办法在不误判真正可疑用户的前提下,避免将这些用户标记为可疑?例如,是否可以依据导入带来的其他副作用进行判断,比如他们的 IP 地址字段为空,或者“访问天数”为 0 而“阅读帖子数”为 1?
Roman
(Roman Rizzi)
2
目前还无法实现,抱歉。
我们每两小时仅将 10 名此类用户加入队列,以避免审查队列被淹没。如果您想禁用该功能,可以关闭 approve_suspect_users 设置。
pfaffman
(Jay Pfaffman)
3
[quote=“J5lx, 帖子:1, 主题:144071”]
我认为这些用户被标记是因为他们设置了网站/个人简介,并且只发布过一次帖子(这意味着,由于他们是导入的,他们的帖子阅读计数也仅为 1)。[/quote]
你应该可以在 Rails 控制台中解决这个问题。我不确定具体该怎么做,但也许可以清除那些超过一年未登录的用户的个人简介,或者将他们的阅读计数设置为 100 或类似的数值。
J5lx
4
好的。虽然不是我最期望的结果,但我想也没有更好的办法了。谢谢你这么快回复!
Roman
(Roman Rizzi)
5
pfaffman
(Jay Pfaffman)
7
Roman
(Roman Rizzi)
8
排队可疑用户只有一种方式,该方法在执行任何操作前会检查该设置是否已启用。
您确定该设置未启用吗?我们将默认值改为了 true。另外,如果这些用户拥有一个名为 import_id 的自定义字段,它们应该会被跳过。
pfaffman
(Jay Pfaffman)
9
谢谢,Roman。我目前的最佳推测是,这次导入是在 Discourse 添加了“批准可疑用户”功能之后、但在修复补丁应用之前运行的。
如果导入是在这些版本的 Discourse 上运行,然后恢复到已包含修复补丁的版本,这些用户是否仍会被标记为可疑,并且版主会收到“这些项目已在队列中停留 X 天”的消息?如果是这种情况,能否告诉我如何从 UX 界面或 Rails 代码中将它们全部标记为已批准(或者至少告诉我相关的模型,我可以自行解决)?
也许可以用 ReviewableUser.all.destroy_all?
Roman
(Roman Rizzi)
10
就我个人而言,我不喜欢彻底推翻一切。看看这个迁移脚本:
如果你想批准所有被标记的用户,请移除 u.approved = true 这个条件。
pfaffman
(Jay Pfaffman)
11
我本来只指望用一把锤子,你却给了我一把手术刀(我的任务变得更难了,因为我目前没有权限访问那台服务器上的控制台,而我已经在我的服务器上开始了新的导入)。非常感谢!