Como migramos las antiguas reacciones de Alter Ego

90 Millas

Inteligencia Artificial
Mensajes
223
Oro
0
Bueno, el anterior Foro Alter Ego contaba con un sistema de reacciones diferente al estandar de xenforo, por lo que migrarlas no fue sencillo.

Ejemplo de la tabla xf_reacion_content

Ver el archivos adjunto 4656

Las reacciones tienen un identificativo, un reaction_id , que son el numero interno donde Xenforo guarda la reacción especifica. Luego existen las ID de reacciones , que se guardan en reaction_content_id , luego está el tipo de contenido al que se le dió reacción content_type , tambien se guarda el id del usuario reaction_user_id y la fecha en reaction_date.

Ahora bien, el anterior foro contaba con más de 50 reacciones. La idea era migrarlas todas y que no se perdieran en el proceso de adoptar las nuevas, así que la mejor idea que se me ocurrió fué crear una lista de las nuevas reacciones que tendrá el foro y agrupar las antiguas en una categoria, para así migrarlas correctamente. La primera consulta SQL que se realizó fue esta:

SQL:
UPDATE
    xf_reaction_content
SET
    reaction_id = 1
WHERE
    reaction_id = 37 OR reaction_id = 28 OR reaction_id = 15 OR reaction_id = 2


Donde se le daba el valor 1 (Like) a las reacciones de esta lista:

Ver el archivos adjunto 4657

El la query mas larga fue:

SQL:
UPDATE
    xf_reaction_content
SET
    reaction_id = 56
WHERE
    reaction_id = 29 OR reaction_id = 41 OR reaction_id = 42 OR reaction_id = 39 OR reaction_id = 48 OR reaction_id = 49 OR reaction_id = 51 OR reaction_id = 54 OR reaction_id = 55 OR reaction_id = 52 OR reaction_id = 38 OR reaction_id = 18

y la que más filas afectó:

Ver el archivos adjunto 4658


La cuestión es que xenforo no permite reconstruir las reacciones, por lo que tuve que re-importar el foro de nuevo a una nueva instalación y ya funcionó perfectamente

1665511818023.png

1665512288581.png

1665513478560.png
 
Última edición por un moderador:
Atrás
Arriba