¿Eliminar publicaciones eliminadas permanentemente en bloque?

Estimado equipo,

¡Por favor, ayúdenme a resolver esto!

Tenemos demasiados posts eliminados y necesitamos borrarlos permanentemente, pero de forma masiva.

3 Me gusta

Un tema eliminado es exactamente lo que parece: un tema eliminado. No se requiere ninguna acción adicional y solo los administradores pueden ver dichos temas. Estás eliminando directamente un tema que ya había sido eliminado.

1 me gusta

No quiero que aparezcan en la lista de temas eliminados; quiero borrarlos de la base de datos.

¿Hay algún comando o método para eliminarlos?

5 Me gusta

No es algo que haya hecho yo, pero ¿es útil este tema:

2 Me gusta

No útil :frowning: ¿Por favor ayúdame si encuentras algo?

1 me gusta

quizás esto te pueda ayudar

2 Me gusta

image

¿no se muestra la categoría de publicaciones eliminadas?

1 me gusta

¿Tienes una categoría con el slug deleted-posts? Las publicaciones en tu captura de pantalla parecen estar en categorías que tienen slugs diferentes.

image

1 me gusta

Si elimino por categoría, se borrarán todas las PUBLICACIONES que no estén en deleted-posts.

¿Podrías ayudarme a eliminar deleted-posts de la base de datos?

2 Me gusta

También estoy buscando una manera de hacer esto. Después de mucha búsqueda aquí en Meta y de muchos intentos fallidos, ahora estoy bastante confundido con todo.

¿Podemos realmente eliminar permanentemente las publicaciones borradas de la base de datos? ¿Cómo?

2 Me gusta

Si puedes eliminar una categoría, entonces también puedes eliminar las publicaciones eliminadas.

Voy a reconstruir mi aplicación de pruebas ahora para instalar el explorador de datos.

:slight_smile:

1 me gusta

No estoy seguro de cómo hacerlo. Solo mencionaba que el comando que escribiste parece estar buscando una categoría con el slug deleted-posts.

1 me gusta

Cuando eliminas una categoría usando la tarea Rake, todas las publicaciones (no solo los temas) dentro de ella se eliminan. Sin embargo, solo se eliminan de forma lógica (soft delete).

Sigo sin estar seguro de cómo eliminar realmente las publicaciones de la base de datos. También sigo sin estar seguro de cómo deshacerme de las subidas asociadas a mis publicaciones eliminadas. Ambas cosas me están causando bastante dolor de cabeza en este momento.

2 Me gusta

Creo que los archivos adjuntos serán limpiados por uno de los trabajos diarios, siempre que no formen parte de la versión más reciente de la publicación. Por lo tanto, cambiar la publicación eliminada a «(eliminado por el administrador)» o algo similar haría que su archivo adjunto formara parte del historial de ediciones, dejándolo huérfano (y así sería recogido por la limpieza de «eliminar huérfanos»).

Sin embargo, esto es solo una teoría, así que podría estar equivocado. :slightly_smiling_face:

Fuente:

1 me gusta

Si inicias sesión en PostgreSQL, puedes eliminarlo de la base de datos.

Estoy revisando las tareas actuales de rake destroy e intentando entender cómo funcionan. Quizás las personas que crearon la tarea de destroy actual puedan implementar algo para que eliminemos las publicaciones borradas.

3 Me gusta

Sí, eso es correcto.
Para eliminar un archivo adjunto, debes borrar el contenido del mensaje y luego eliminar el mensaje.

2 Me gusta

¡Si tienes algún comando o algo útil y rápido, por favor compártelo conmigo!

1 me gusta

¡Gracias, Richard y @JammyDodger!

Mi único problema es que tengo 20.000 publicaciones a las que debo hacer esto. ¿Conoces algún atajo?

2 Me gusta

Temo que estoy al principio de mi viaje en Discourse, por lo que carezco de la experiencia necesaria para eso. :slightly_smiling_face:

¿Es posible modificar esto para que se dirija a publicaciones eliminadas en lugar de a las publicaciones de un usuario y lograr algo similar?

1 me gusta

Post.with_deleted.where('deleted_at is not null').update_all(raw: 'Esta publicación ha sido eliminada', cooked: 'Esta publicación ha sido eliminada')

6 Me gusta