Tengo un problema con la sección de insignias. He modificado algunas insignias y he añadido algunas imágenes allí; después de 6 meses, restauré una copia de seguridad y todo funciona bien, excepto la sección de insignias. Intenté iniciar sesión en modo seguro y deshabilitar todos los complementos… pero el problema sigue igual. ¿Cómo puedo restaurar las secciones de insignias con el nombre e imágenes predeterminados?
¿Estás usando s3 para almacenar tus cargas? Si no es así, ¿podrías entrar en el contenedor e ir a /shared/uploads/default/original/1X? ¿Tienes archivos allí?
Por defecto, no hay forma de “restablecer las imágenes de las insignias” que yo sepa.
Lo primero que haría sería comprobar que las insignias a las que les faltan imágenes se restauraron correctamente. Si consultas la tabla badges, puedes obtener el ID de la imagen en el campo image_upload. Luego, usa ese ID en la tabla uploads para obtener la URL de la imagen, así:
select url from uploads where id = <badge-upload-id>
La URL se parece a esto: /uploads/default/original/1X/c1325294cd04ae6e9072a2577543dad66cf31afe.jpeg y desde ahí, puedes extraer el nombre del archivo, en este caso sería c1325294cd04ae6e9072a2577543dad66cf31afe.jpeg
Luego puedes comprobar en el servidor que la imagen está ahí con find o cualquier método que prefieras
cd /
find . -name c1325294cd04ae6e9072a2577543dad66cf31afe.jpeg
Una vez que te hayas asegurado de que las imágenes se restauraron, en la ruta correcta, entonces podrás continuar depurando, ya que el problema está en otro lugar.
¿La versión de Discourse de la copia de seguridad es demasiado diferente de la versión de Discourse en la que estás restaurando?
Quizás alguien más en la comunidad sepa más sobre esto.
Sigue las instrucciones aquí Discourse Data Explorer para instalar el plugin Data Explorer, puedes usarlo para inspeccionar la tabla de insignias. Enfócate en tus insignias personalizadas.