Comment utiliser l'API pour convertir un sujet de discourse1.com à discourse2.com

Salut tout le monde,
J’ai 2 forums discourse1.com et discourse2.com,
par exemple, j’ai 3000 sujets sur discourse1.com, je veux utiliser l’API pour convertir les 3000 sujets de discourse1.com vers discourse2.com.

Quelqu’un peut-il me guider avec le code ?
Merci !

1 « J'aime »

Peut-être souhaitez-vous en savoir plus sur l’exportation/l’importation de sujets et de catégories. L’API n’est pas un bon moyen de le faire.

1 « J'aime »

Merci @pfaffman ,
Vous pouvez partager plus :

S’il y a 7000 sujets sur discourse2.com, alors quand je déplacerai 3000 sujets de discourse1.com vers discourse2.com, les 7000 sujets sur discourse2.com ne seront pas supprimés ?
Alors discourse2.com aura 7000 + 3000 sujets = 10 000 sujets ?
Je suis inquiet, mes 7000 sujets sur discourse2.com seront supprimés.

C’est idéalement ce qui devrait se passer après une importation réussie.

Il est conseillé de sauvegarder à la fois discourse 1 et discourse 2 avant de commencer l’importation/exportation, au cas où quelque chose se casserait.

2 « J'aime »

Merci, je vais essayer de l’implémenter.

J’ai essayé de changer, mais le onebox de nos sujets a ensuite disparu.

Existe-t-il un autre moyen d’éviter que le onebox ne soit perdu ? Par exemple, que diriez-vous d’utiliser l’API ?

Si vous voulez copier des sujets d’un forum à un autre, le script que j’ai suggéré est la bonne méthode.

Je ne comprends pas ce que cela signifie. Changer quoi ?

Dites-vous que vous avez utilisé ce script et que lorsque celui-ci a importé les sujets, les sujets résultants n’ont pas de prévisualisation ? Reviennent-elles si vous allez dans la clé à molette et reconstruisez le HTML ? Si c’est le cas, vous pouvez soit refaire les messages depuis la ligne de commande, soit, je suppose, simplement attendre.

Mon résultat est le même que sur l’image, il manque le onebox dans les sujets.
J’ai donc pensé à utiliser l’API, mais je ne suis pas sûr non plus : la méthode API maintiendra-t-elle le onebox.

Avant :

Après :

C’est normal, vous devez effectuer un nouveau traitement, les publications seront traitées et les onebox seront générées :

cd /var/discourse
./launcher enter app
rake posts:rebake

Merci @Steven ,
Je m’attends toujours à pouvoir utiliser l’API,
car rake posts:rebake entraînera également le rebaking de nos autres sujets.
Pour certaines raisons, il nous est très difficile de prendre une décision de rebaking.

Vous pouvez reconstruire chaque publication manuellement en utilisant la touche puis l’icône de clé à molette pour ouvrir quelques options, utilisez Reconstruire le HTML

Cela traitera à nouveau le onebox

1 « J'aime »

Merci beaucoup,
cependant, nous avons de nombreux sujets, si nous le faisons manuellement, le temps et le coût ne seront pas suffisants.

J’espère que quelqu’un pourra me guider pour utiliser l’API, sans supprimer onebox.