Cambiar fecha de registro de usuario (created_at) a través de la API

¡Hola! Estoy experimentando con la migración desde otra plataforma a Discourse utilizando la API. Tengo muchos usuarios y los migraré a Discourse. Al crear un usuario, este tiene la fecha de creación de hoy. Pero muchos usuarios llevan más de 10 años en el foro y sería una lástima perder esa información tras la migración.

Cuando intento actualizar un usuario mediante la API, quiero modificar el campo created_at.

'created_at' => '2013-05-04T11:49:06.782Z'

Sin embargo, la fecha no cambia. ¿Quizás existe otra forma de hacerlo?

2 Me gusta

¿Hay alguna razón para no usar un script de migración? Esto y muchos otros problemas que probablemente encuentres quedarán resueltos.

2 Me gusta

¡Oh, sí! Usaremos la migración de su equipo cuando tengamos un volcado de la base de datos.

Ahora mismo solo estoy experimentando, ya que aún no conozco todas las funciones de Discourse. En el antiguo foro teníamos grupos y roles especiales. Estoy realizando la importación mediante la API para configurarlos en Discourse.

También quiero entender en detalle cómo trabajar con los niveles de confianza, los grupos y las insignias. Algunos de ellos dependen de la fecha de registro.

Nada de eso depende de la fecha de creación del usuario. :wink:

Creo que podrías ser capaz de enviar un valor created_at en un push o en una publicación.

1 me gusta

Ok,
Acabo de ver la configuración según el número de días, pero aún no la he leído en detalle. Solo la he pospuesto hasta las pruebas con usuarios.

2 Me gusta

Creo que quizás puedas enviar un valor created_at en un push o en un post.

Hago una solicitud para actualizar varios campos para la prueba.

    'created_at' => '2013-05-04T11:49:06.782Z',
    'user_fields' => [
        1 => '104',
        2 => 'Patron'
    ]

En este caso, user_fields se actualiza sin problemas. Así que decidí preguntar en el foro. Quizás created_date se actualice mediante alguna otra solicitud, como trust_levels, que tiene una URL de API especial.

1 me gusta

Puedes hacerlo desde la consola de Rails. También puedes simplemente cambiar su nivel de confianza. Descripción de varios estados de usuario en Discourse (Administrador / Moderador / Personal / Desarrollador / Otros) hay otros temas en esa categoría.

1 me gusta

Gracias por compartir y por la perspectiva :ok_hand: