Hola,
Intenté ejecutar comandos en rails c como User.find(1).update(ip_address: nil, topics_viewed: nil) para actualizar las cosas en la lista a continuación, sin embargo, seguí recibiendo errores:
¿Cómo cambiaría estos valores?
Gracias.
Hola,
Intenté ejecutar comandos en rails c como User.find(1).update(ip_address: nil, topics_viewed: nil) para actualizar las cosas en la lista a continuación, sin embargo, seguí recibiendo errores:
¿Cómo cambiaría estos valores?
Gracias.
¿Qué errores estás obteniendo?
Algunas de esas cosas viven en otras tablas/modelos. Las direcciones de correo electrónico, por ejemplo, están en su propia tabla, por lo que necesitas actualizarlas allí.
¿Qué problema estás resolviendo?
Solo estoy intentando restablecer las estadísticas, quiero deshacerme de topics_viewed, posts_read, read_time y last_emailed. No me interesan los detalles del usuario ya que se pueden cambiar usando la interfaz, solo los valores que afectan el perfil del usuario pero no se pueden editar.
No se pueden editar porque no forman parte del modelo de usuario.
Hay un modelo que hace un seguimiento de los temas que un usuario ha visto (TopicViewItem), por lo que necesitarías borrar esos (quizás TopicViewItem.destroy_all – no – eso no funciona.) y luego ejecutar las actualizaciones correspondientes. Y si se les envió un correo electrónico, entonces la última vez que se les envió un correo electrónico será la última vez que se les envió un correo electrónico.
Hay un modelo PostTiming que hace un seguimiento de las publicaciones que se leen y el tiempo de lectura. Ah, puedes buscar en el código fuente PostTiming y encontrar algo como
PostTiming.destroy_for(current_user.id, [topic_id])
Así que eso es un comienzo. Quizás esto:
PostTiming.destroy_for(1, PostTiming.where(user_id: 1).pluck(:topic_id).uniq))
Hay algunas tareas ensureconsistency que podrían ser la forma de actualizar eso, pero no estoy del todo seguro.
En ese caso, ¿es posible fusionar una cuenta de administrador a través de la consola? Soy consciente de que no es posible con la interfaz de administrador.
¿Simplemente quítales sus privilegios de administrador y hazlo?
Pero parece que puedes hacerlo con una tarea de rake: Merging user accounts
Gracias por eso, pero no estoy seguro de si es posible quitarle los privilegios de administrador al administrador original.
Si es un desarrollador (eso está configurado en app.yml), entonces creo que tienes razón.
Además, ¡acabo de notar esta tarea de rake!
rake destroy:stats
Parece que eso podría hacer lo que quieres.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.