Pourriez-vous simplement les supprimer ?
u=User.find_by_username('byebye')
posts=Post.where(user_id: u.id)
et ensuite appeler PostDestroyer sur tous les posts. (Je ne me souviens pas exactement comment faire ça à la volée.)
Si vous voulez vraiment remplacer leurs posts par « supprimé par… », vous feriez quelque chose comme
posts.update_all(raw: "supprimé par demande de l'utilisateur")
Et ensuite, vous devrez effacer des éléments du modèle PostRevision, peut-être
posts.each do |p|
bad=PostRevision.where(post_id: p.id)
bad.destroy_all
end
Vous voudriez en faire quelques-unes à la main en guise de test, ou sur un site de staging si vous êtes vraiment prudent.