Signets importés manquants

Je travaille sur un test d’importation depuis un autre logiciel de forum et je rencontre un problème lors de l’importation des signets. L’importateur de base dispose de la fonction create_bookmarks, et je transmets les valeurs user_id et post_id. Le script ne génère aucune erreur et affiche la progression normale :

25 / 25 (100,0 %)

Cependant, aucun signet n’est créé. La table des signets est vide (vérifié via l’explorateur de données). Avez-vous une idée de pourquoi cela ne fonctionne pas comme prévu ?

Vous pourriez ajouter un puts après l’appel à PostActionCreator et vérifier s’il crée quelque chose.

Ah, il se peut que j’aie manqué les importateurs. Je vais jeter un coup d’œil dès ce matin (je commence dans environ une heure). En attendant, vous pouvez exécuter une tâche Rake pour synchroniser les signets issus des actions de publication vers la nouvelle table.

bundle exec rake bookmarks:sync_to_table

Il s’agit d’une action non destructive et vous pouvez l’exécuter autant de fois que vous le souhaitez.

Hmm. J’ai regardé dans la table post_actions et elle est également vide. Le code d’importation utilise-t-il un processus obsolète ici ? J’envisageais simplement d’exécuter une requête d’insertion directe dans la base de données, mais je vais voir si je peux creuser un peu plus ici aussi.

J’ai été assez surpris de voir qu’il y avait un support dans les importateurs !

J’ai vérifié et j’ai bien omis create_bookmarks dans le script d’importation de base. Je vais soumettre une PR aujourd’hui pour qu’il crée des favoris dans la nouvelle table. C’est très étrange qu’il ne génère pas de favoris PostAction pour vous, cependant.

@Ghan J’ai fusionné une PR FIX: Change base importer to create new Bookmark records by martin-brennan · Pull Request #9603 · discourse/discourse · GitHub qui crée désormais les nouveaux signets. Essaie-le et dis-moi si cela fonctionne pour toi !

J’ai mis à jour plus tôt aujourd’hui et les favoris sont maintenant importés ! Merci pour la correction rapide !