批量删除多个用户

Discourse 提供了两个强大的功能,用于大规模管理用户:同时搜索多个用户以及批量删除它们。这些功能在支持工作流程中特别有用,例如当你有一批需要审核的用户列表时,或者在清理垃圾账号时。

同时搜索多个用户

管理员用户列表的搜索框支持同时搜索多个用户。你可以输入多个用户名或电子邮件地址,并用逗号或空格分隔。

要使用此功能:

  1. 前往 /admin/users/list/active 或其变体(new、staff、suspended、silenced)。
  2. 在搜索框中,输入你要查找的用户名或电子邮件地址,并用逗号或空格分隔。例如:
    • sam, bob — 查找用户名或电子邮件中包含 “sam” 或 “bob” 的用户
    • sam@example.com, bob@example.com — 查找电子邮件完全匹配的用户
    • sam, bob@example.com — 用户名和电子邮件的混合搜索也有效
  3. 列表会随你输入实时更新,显示匹配的用户。

搜索框中的搜索提示显示:“用户名或电子邮件(用逗号或空格分隔),或 IP 地址”

搜索的工作原理

当你使用单个术语搜索时,搜索行为与以前相同:它在用户名或主要电子邮件中查找子字符串匹配,你也可以通过 IP 地址搜索。

当你使用多个术语搜索时,搜索会查找:

  • 用户名主要电子邮件子字符串匹配 — 因此搜索 sam 会找到 sam123sam@example.com
  • 对于看起来像电子邮件的术语(包含 @ 符号),电子邮件地址精确匹配 — 这包括次要电子邮件
  • 使用多个术语搜索时,IP 地址搜索被禁用

你一次最多可以搜索 100 个术语。

可共享的搜索 URL

搜索也可以通过 URL 共享。当你在搜索框中输入时,地址栏会更新为带有 filter 查询参数的 URL。例如:

/admin/users/list/active?filter=sam,bob@example.com

你可以将此 URL 加入书签或与其他管理员共享。访问此类 URL 会预填充搜索框并自动应用过滤器。

跨选项卡搜索

搜索是针对每个选项卡的。当你切换选项卡(例如,从“Active”切换到“New”)时,搜索会被清除。这意味着你可以在每个选项卡中开始新的搜索,而不会相互干扰。

批量删除多个用户

找到你要管理的用户后,你可以批量删除他们。

要使用此功能:

  1. 点击用户列表顶部“Username”列旁边的批量选择图标 image,启用批量选择模式。
  2. 每个用户旁边会出现一个复选框。选择你要删除的用户。
  3. 从列表顶部出现的“Bulk actions”下拉菜单中,选择“Delete users…”。
  4. 在确认模态框中,输入确认短语。
  5. (可选)选择阻止所选用户的 IP 和电子邮件地址的选项。
  6. 确认删除操作。

启动删除操作后,确认模态框会更新以显示实时进度,因为每个用户都被删除。如果在删除过程中发生任何错误,它们会出现在模态框中,同时继续处理剩余用户。

注意事项

  • 你一次最多可以删除 100 个用户。
  • 无法删除的用户会显示禁用的复选框。将鼠标悬停在复选框上会显示一个工具提示,解释为什么无法删除它们。
  • 使用批量选择模式时,你可以细化搜索以查找特定用户。即使你修改搜索术语或完全删除它,你选择的用户也会被记住。这使得在不同搜索结果中选择用户变得很方便。

用户管理的最佳实践

  • 定期审核新用户: 密切关注 /admin/users/list/new 页面。这通常是你发现可疑活动或潜在垃圾发送者的第一个地方。
  • 使用屏蔽的 IP 和电子邮件:Admin > Logs > Screened IPsScreened Emails 下主动阻止已知的垃圾来源。
  • 熟悉信任等级: Discourse 信任等级是你社区免疫系统的基本组成部分,随着时间的推移,为受信任的用户授予更多权限。阅读 Discourse 信任等级指南
  • 制定明确的社区准则: 一套好的准则有助于设定行为期望,并使审核决定更容易。参见 Discourse 准则
  • 使用组管理权限: 使用 来管理对类别和功能的访问,而不是为单个用户分配权限。
  • 自动化不活跃用户清理: clean_up_inactive_users_after_days 站点设置可以在指定天数后自动删除没有帖子的不活跃信任等级 0 用户(默认禁用)。

常见问题

使用多个术语时,我可以通过 IP 地址搜索吗?

不可以。当你提供多个搜索术语时,IP 地址搜索被禁用。如果你需要通过 IP 搜索,请使用单个术语。

我一次可以搜索多少个用户?

你一次最多可以搜索 100 个术语(用户名或电子邮件)。

我需要用逗号分隔术语吗?

你可以使用逗号、空格或两者的混合。例如,sam bobsam,bob 都有效。

搜索是否匹配部分用户名?

是的,对于用户名和主要电子邮件,搜索使用子字符串匹配。对于包含 @ 符号的电子邮件地址,搜索使用精确匹配(包括次要电子邮件)。

当我更改搜索时,我选择的用户会发生什么?

即使你修改搜索术语或完全删除它,你选择的用户也会被记住。这使得在不同搜索结果中选择用户变得很容易。

其他资源

5 个赞

如何在 Discourse 中实现前者?可以为每个用户单独分配权限吗?

停用或匿名化与删除用户的设置之间有什么联系?我以为停用或匿名化不会删除帖子。

1 个赞

2026年7月: 本指南已更新,以反映通过此提交引入的新功能,该功能允许从管理员用户列表中同时搜索多个用户。