Gelöschte Nachrichten wiederherstellen?

Hallo zusammen,

ich bin Auditor an einer Stelle mit Discourse-Engine. Ein Mitglied hat etwa 1300 Nachrichten gelöscht. Das System verschiebt die Antworten auf diese Nachricht automatisch ans Ende des Themas. Haben wir eine Einrichtung für die Masswiederherstellung?

Wenn Sie selbst gehostet sind, können Sie dies über die Rails-Konsole erledigen. Wenn Sie gehostet sind, wenden Sie sich bitte an den Support.

Es gibt möglicherweise einige Hinweise unter Administrative Bulk Operations.

Etwas in der Art von

t=Topic.all.with_deleted.where("deleted_at is not null").where(user_id: 123)
t.update_all(deleted_at: nil, deleted_by_id: nil)

Aber ich denke, Sie müssen dann noch etwas anderes ausführen, um einige andere Tabellen zu aktualisieren.

Kannst du genau beschreiben, wie das passiert ist? Bei einer Standard-Installation von Discourse ist ein regulärer Benutzer in Bezug auf die Menge der löschbaren Nachrichten rate-begrenzt, und Löschungen werden erst nach 24 Stunden wirksam.

Ich glaube, er hat jeden Tag fünf Beiträge gelöscht.

Ich verstehe. Da es sich um Soft-Deletes handelt, sollten Sie diese rückgängig machen können – entweder über die Benutzeroberfläche oder über die Kommandozeile, wenn Sie per SSH auf den Server zugreifen.

Sie können in den Einstellungen Ihres Admin-Bereichs die Anzahl der pro Tag zulässigen Löschungen reduzieren, um dies in Zukunft zu verhindern. Es wird bereits diskutiert, die Option „0

Können wir sicherstellen, dass die Null-Einstellung nächste Woche unterstützt wird, @sam? Und aktualisiere bitte den Text um die Einstellung herum, damit die Nutzer wissen, dass diese Option existiert.

Erledigt über:

Das Setzen von max_post_deletions_per_minute oder max_post_deletions_per_day auf 0 deaktiviert die Selbstlöschung von Beiträgen.