أسهل طريقة لتصدير موضوع واحد؟

مرحباً،

نحن نحاول تصدير موضوع واحد من مثيل Discourse إلى التخزين المحلي أو، بشكل مفضل، إلى مثيل آخر. يدعم المسؤولون في المثيل الأصلي عملية النقل، لكنهم لا يرغبون بالضرورة في قضاء وقت طويل في العمل على تنفيذها، لذا نبحث عن أي حلول متاحة تكون سريعة وخالية من المتاعب قدر الإمكان.

حتى الآن، نحن ننظر في خيارين:

بينما يُعد الرابط الأول الطريقة الأكثر مباشرة لتحقيق هدفنا النهائي، إلا أننا غير متأكدين من موافقة مسؤولينا على القيام بما يبدو وكأنه جزء كبير من العمل من جانبهم لدعم عملية النقل، لذا فإننا نفكر أيضاً في أداة Discourse Downloader التي طورها @pfaffman.

ومع ذلك، إذا كان أحد هذين الخيارين أفضل بوضوح بناءً على احتياجاتنا وقيودنا، فسنقدر جداً أي رؤى من أشخاص قاموا بإحدى الطريقتين أو لديهم معرفة أكبر بهذه العملية منا. بالإضافة إلى ذلك، إذا كانت هناك أي خيارات أخرى لم نكتشفها والتي قد تكون أفضل، فسنكون ممتنين جداً لمعرفة ذلك!

شكراً لوقتك!

أداة سطر الأوامر لاستيراد وتصدير الفئات/المواضيع تختزل إلى بضع أوامر وخمس دقائق من العمل على الأكثر.

هل فكرت في التداعيات القانونية لنسخ المستخدمين إلى مثيل آخر؟

جميع المستخدمين يوافقون على الانتقال، لذا لا أتوقع أن يكون ذلك مشكلة.

إذا كنت تعتقد غير ذلك، فيرجى إخباري!

هل تقصد حقًا موضوعًا واحدًا؟ لماذا لا تقوم بالنسخ واللصق في واجهة الويب؟

تعديل: أوه نعم. يحتوي الموضوع على العديد من المنشورات. آسف. :frowning_face:

على أي حال، الآن بعد أن فهمت، أعتقد أنني سأستخدم مهمة rake إذا تمكنت من إقناع المسؤولين بذلك. لا أعتقد أن الأمر صعب للغاية.

أسباب محتملة:

  • ترغب في نقل المستخدمين، والرسائل المرفقة، والاقتباسات، والإعجابات أيضًا
  • يحتوي الموضوع على عدد هائل من المنشورات

حسناً، إذن

قال المشرفون لا لكلا الحلين لأن العمل المطلوب لتنفيذه سيكون كبيراً جداً

هذه كلماتهم، وليست كلماتي، وأنا أيضاً لست معجباً بهذا

ألا تظن أنك تعرف كيفية الحصول على ملف .json ليس لمنشور واحد بل للموضوع بأكمله دون صلاحيات المشرف؟

تعديل: قد يكون من الأفضل جعل هذا موضوعاً منفصلاً، كما أفترض أنه لم يعد متوافقاً مع العنوان. ومع ذلك، يبدو وكأنه سبام، لذا لن أفعل ذلك.

لا أظن أنك تحتاج إلى تشغيل حل @pfaffman على الخادم. حسب علمي، لا تحتاج إلى موافقة المسؤولين لذلك.

يتطلب مفتاح API.

هل هذا موضوع في منتدى عام؟ في هذه الحالة، يجب أن يعمل ذلك بدون مفتاح API.

واو! يبدو أنني كتبت الكود بحيث لا يتطلب مفتاح API إذا كان الموضوع عامًا.

أو ربما لا؟

لقد دفعت إصلاحًا، لذا يمكنك تنفيذ git pull وسيجب أن يعمل الآن مع ملف apikeys فارغ. (أعتقد أنك بحاجة إلى إنشاء ملف فارغ، على الرغم من ذلك). سيقوم بتحميل موضوع إلى ملف نصي.

لقد كتبت هذا التحليل للمناقشات غير المتصلة بالإنترنت، لذا لست متأكدًا من مدى فائدته دون بعض العمل. أعتقد أنه يجب أن يسمح لك بتنزيل المحتوى محليًا، لكنه لن يكون مفيدًا كثيرًا (كما هو الآن) لنقله إلى منصة Discourse أخرى.

إذا كنت تريد نقله إلى منصة Discourse أخرى وهو موضوع عام، فستحتاج، على سبيل المثال، إلى تعديل هذه الأداة إلى شيء مختلف. إذا كان لديك ميزانية، يمكنك التواصل معي أو النشر في قناة Marketplace.

بصراحة، لو كنت سأقضي هذا القدر من الوقت، لكتبتُ على الأرجح برنامجًا يقوم بجلب الموضوع تلقائيًا ويحفظ جميع ملفات .json الفردية يدويًا :grinning_face_with_smiling_eyes:

للأسف، لا أستطيع تخصيص الموارد لأي من الخيارين المذكورين، لذا قد يكون تشغيل أداة التحميل هو الخيار الأفضل المتاح لدي.

شكرًا لك!

هذا الكود هو نقطة انطلاق جيدة. فهو يقوم بتنزيل ملفات JSON ثم تحويلها إلى أشياء أخرى.

يبدو ذلك مفيدًا - شكرًا لك!

شكرًا لك على كود Ruby، @pfaffman!

بالنسبة لمن يفضلون Python، هناك بداية ممتازة حول كيفية استخدام واجهة برمجة التطبيقات وملفات JSON في mcmcclur/ArchiveDiscourse: Code for archiving my Discourse sites.