Si quiero reconstruir el recuento de reacciones y el resumen, ¿hay alguna manera de hacerlo?
Como: bundle exec rake reactions:recount
Si quiero reconstruir el recuento de reacciones y el resumen, ¿hay alguna manera de hacerlo?
Como: bundle exec rake reactions:recount
¿Estaría esto cubierto por el trabajo en segundo plano jobs::EnsureDbConsistency?
Puedes activarlo manualmente desde tu página /sidekiq/scheduler si quieres acelerarlo y ver si eso reconstruye tus conteos.
Sin embargo, si puedes dar un poco más de detalle sobre por qué necesitas recalcularlos, podría agregar algo de contexto adicional que podría ser importante.
Gracias por tu respuesta. Estaba haciendo la importación de prueba de reacciones de Xenforo a Discourse. Los datos se importaron correctamente pero no aparecen en las publicaciones con nombre de usuario y todo.
Ya lo he conseguido.
Usé este script
RAILS_ENV=production bundle exec rails runner "
counts = DiscourseReactions::ReactionUser.group(:reaction_id).count
DiscourseReactions::Reaction.where(id: counts.keys).find_each do |reaction|
reaction.update_column(:reaction_users_count, counts[reaction.id])
end
posts_to_update = Post.where(id: DiscourseReactions::Reaction.select(:post_id).distinct)
posts_to_update.find_each do |post|
post_reactions = post.reactions.where('reaction_users_count > 0')
custom_field_value = post_reactions.map do |reaction|
{
id: reaction.reaction_value,
type: reaction.reaction_type,
count: reaction.reaction_users_count
}
end
if custom_field_value.present?
post.custom_fields['discourse_reactions_reactions'] = custom_field_value.to_json
else
post.custom_fields.delete('discourse_reactions_reactions')
end
post.save_custom_fields(true)
"