继续讨论 引入永久删除帖子功能:
我有一个论坛,进行了一次大清理。但在审查数据库备份时,其中仍然充斥着旧的软删除数据。
是否有某种 rake 命令可以运行以从数据库中清除已删除的项目?
请 Discourse 团队,让这件事变得更简单。
我现在之所以活跃,是因为我正在清理我的网站上由 Google 认证创建的成千上万的主题和帖子。
我不想让内容被软删除,我想批量永久删除所有成千上万的主题和帖子。
我也不想编写代码或 CLI 命令。
我也一直在研究这个问题——因为我批量导入了大量主题,但格式不正确——所以我想批量删除它们然后重试。
我可以在用户界面中批量软删除它们,但它们仍然在数据库中。难道软删除的项目最终不会被删除吗,否则数据库将永远增长吗??
很遗憾,目前系统尚未提供自动清理软删除帖子的功能,用户界面中也没有手动批量处理的选项。如果您需要执行此类操作,目前仍需通过 Rails 控制台进行。
有一些讨论主题分享了他人处理此类问题的经验。我认为以下链接可能是一个不错的参考示例,涵盖了如何同时删除主题和帖子(不过您仍需根据实际需求稍作调整):How to delete thousands of Personal Messages? - #7 by RGJ Rails 控制台中执行任何可能破坏数据的操作前,请务必先备份,以防意外发生。![]()
如果您希望为此功能投上一票并表达您的意见,以下是目前最活跃的相关功能请求(Contribute):
感谢您的反馈——非常感谢!
供您参考——我发现一个拥有如此多出色功能的平台竟然没有任何真正的数据保留控制,这真是太不可思议了。这可能会给一些公司带来监管合规风险。最起码,您应该至少能够指定软删除项目的保留期(以年为单位)——这有助于合规和容量管理。
我将按建议提出功能请求 ![]()