Hé, je transfère une tonne de contenu depuis mon ancien logiciel de forum (propriétaire) vers un nouveau forum Discourse.
Je ne suis pas développeur Ruby, donc je n’ai pas vraiment pu démarrer avec les scripts d’importation fournis par Discourse… ce n’est tout simplement pas une bonne solution pour moi. Je fais donc simplement des appels à l’API pour gérer toutes les étapes.
Le problème est que je rencontre de nombreux problèmes en cours de route… principalement des limites de taux, mais aussi des problèmes de forums en double, et de faire passer le contenu des messages à travers tous les « contrôles de réalité » (par exemple : longueur minimale du message, que j’ai finalement réussi à modifier à ‘1’ dans les paramètres).
Y a-t-il une autre option meilleure ? Puis-je en quelque sorte pousser des données directement dans la base de données, ou… ?
Si vous connaissez des langages de programmation, commencer par les scripts d’importation existants est la meilleure approche. Les scripts d’importation en masse modifient directement le SQL, mais ils sont toujours écrits en Ruby.
D’accord… Je vais examiner les scripts… Je suis un développeur expérimenté dans d’autres langages, mais pas en Ruby/RoR.
…
Je suis de retour après avoir examiné les scripts d’importation existants sur GitHub. D’après ce que je vois, cela ressemble beaucoup au code que j’ai déjà écrit pour mes propres importations… de nombreuses boucles pour récupérer les utilisateurs, les sujets et enfin les messages. Du code spécial pour gérer les pièces jointes (les téléverser séparément, obtenir l’URL interne de Discourse, et l’ajouter au corps du message).
Y a-t-il des appels API particuliers ou autre chose que je manque dans ces scripts qui pourrait m’aider ? Le problème n’est pas que je ne puisse pas écrire mon propre script d’importation (en utilisant l’API), mais plutôt que cela me semble lourd et je me demande s’il existe une solution plus fluide ou plus élégante. S’il y a des « astuces » (comme des appels API spéciaux ?) dans les scripts d’exemple que je pourrais réutiliser dans un autre langage, j’aimerais beaucoup les comprendre.
Héhé, oui, nous avons établi cela, et nous avons également établi que je ne connais pas RoR, donc investir du temps pour réécrire l’un des scripts existants n’est pas non plus une bonne solution pour moi. Si vous avez d’autres recommandations qui pourraient m’aider ici je serais (sincèrement) ravi de les entendre. Merci.
Les scripts de migration principaux sont un excellent point de départ. Il y a un mois, je n’avais jamais programmé en Ruby non plus.
En fait, il y a quelques jours, j’ai écrit un script PHP personnalisé pour aider à la migration (une longue décennie d’années de PHP derrière moi), mais j’ai décidé de le réécrire en Ruby et « c’est du gâteau » LOL
Maintenant, je suis fan de Ruby !
Ruby me semblait un peu étrange au début, mais cela commence à prendre du sens.
Plongez-y les deux pieds et tout ira bien !
Ou… engagez l’un des codeurs ici pour vous aider !