هجرة منتدى bbPress لإضافة WordPress إلى Discourse

يبدو الأمر كذلك.

كما أن سكريبت استيراد vbulletin الخاص بي، الذي يتعامل مع المرفقات غير المرتبطة، لا يبحث عنها في ذلك الجدول، لذا ستحتاج إلى كود مخصص للتعامل مع ذلك، حتى بعد أن أتمكن من تقديم طلب دمج (PR) يحتوي على سكريبتي.

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

إعجاب واحد (1)

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

شكرًا جزيلاً على جميع النصائح! :clinking_beer_mugs:

إعجاب واحد (1)

رائع! سعيد لأن السحر نجح معك! (أوه! أدرك الآن أنني كنت أبحث في سكريبت vBulletin وليس bbPress، ومن هنا جاء ارتباكي. هذا يفسر لماذا لم أستطع العثور على الجدول!)

إعجاب واحد (1)

مرحبًا
حصلت على خطأ بعد تشغيل أمر IMPORT bundle exec:

استخدام unicorn 5.5.1
استخدام webmock 3.7.6
استخدام webpush 1.0.0
استخدام yaml-lint 0.0.10
اكتمل الحزمة! 130 اعتمادًا في Gemfile، تم تثبيت 214 gem الآن.
استخدم `bundle info [gemname]` لمعرفة مكان تثبيت gem المضمن.
تتبع (الأحدث أولاً):
        31: من scripts/import_scripts/bbpress.rb:4 في `<main>'
        30: من scripts/import_scripts/bbpress.rb:4 في `require'
        29: من /var/discourse/scripts/import_scripts/base.rb:16 في `<top (required)>'
        28: من /var/discourse/scripts/import_scripts/base.rb:16 في `require_relative'
        27: من /var/discourse/config/environment.rb:7 في `<top (required)>'
        26: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/railtie.rb:190 في `method_missing'
        25: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/railtie.rb:190 في `public_send'
        24: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/application.rb:363 في `initialize!'
        23: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:60 في `run_initializers'
        22: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:205 في `tsort_each'
        21: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:226 في `tsort_each'
        20: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `each_strongly_connected_component'
        19: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `call'
        18: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `each'
        17: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:349 في `block in each_strongly_connected_component'
        16: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:431 في `each_strongly_connected_component_from'
        15: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:350 في `block (2 levels) in each_strongly_connected_component'
        14: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:228 في `block in tsort_each'
        13: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:61 في `block in run_initializers'
        12: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:32 في `run'
        11: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:32 في `instance_exec'
        10: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/application/bootstrap.rb:73 في `block in <module:Bootstrap>'
         9: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:51 في `run_load_hooks'
         8: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:51 في `each'
         7: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:52 في `block in run_load_hooks'
         6: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:67 في `execute_hook'
         5: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:62 في `with_execution_control'
         4: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:69 في `block in execute_hook'
         3: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/ember-rails-0.18.5/lib/ember/rails/engine.rb:19 في `block in <class:Engine>'
         2: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:59 في `load_missing_constant'
         1: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:16 في `allow_bootsnap_retry'
/home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:60 في `block in load_missing_constant': ثابت غير مهيأ Sprockets::Engines (NameError)
        32: من scripts/import_scripts/bbpress.rb:4 في `<main>'
        31: من scripts/import_scripts/bbpress.rb:4 في `require'
        30: من /var/discourse/scripts/import_scripts/base.rb:16 في `<top (required)>'
        29: من /var/discourse/scripts/import_scripts/base.rb:16 في `require_relative'
        28: من /var/discourse/config/environment.rb:7 في `<top (required)>'
        27: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/railtie.rb:190 في `method_missing'
        26: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/railtie.rb:190 في `public_send'
        25: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/application.rb:363 في `initialize!'
        24: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:60 في `run_initializers'
        23: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:205 في `tsort_each'
        22: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:226 في `tsort_each'
        21: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `each_strongly_connected_component'
        20: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `call'
        19: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:347 في `each'
        18: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:349 في `block in each_strongly_connected_component'
        17: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:431 في `each_strongly_connected_component_from'
        16: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:350 في `block (2 levels) in each_strongly_connected_component'
        15: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/2.6.0/tsort.rb:228 في `block in tsort_each'
        14: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:61 في `block in run_initializers'
        13: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:32 في `run'
        12: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/initializable.rb:32 في `instance_exec'
        11: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/railties-6.0.1/lib/rails/application/bootstrap.rb:73 في `block in <module:Bootstrap>'
        10: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:51 في `run_load_hooks'
         9: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:51 في `each'
         8: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:52 في `block in run_load_hooks'
         7: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:67 في `execute_hook'
         6: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:62 في `with_execution_control'
         5: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/activesupport-6.0.1/lib/active_support/lazy_load_hooks.rb:69 في `block in execute_hook'
         4: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/ember-rails-0.18.5/lib/ember/rails/engine.rb:19 في `block in <class:Engine>'
         3: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:58 في `load_missing_constant'
         2: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:79 في `rescue in load_missing_constant'
         1: من /home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:8 في `without_bootsnap_cache'
/home/kenaddams42/.rbenv/versions/2.6.5/lib/ruby/gems/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/active_support.rb:79 في `block in load_missing_constant': ثابت غير مهيأ Sprockets::Engines (NameError)
root@sd-114000:/var/discourse# ~

هل لديك أي فكرة من فضلك؟
شكرًا لك :wink:

شكرًا لك على هذا الدرس، @vinothkannans!

أنا عالق في تعديل ملف bbpress.rb

بعد تشغيل الأمر sudo nano script/import_scripts/bbpress.rb، يفتح محرر الملفات، ولكن عندما أحاول الحفظ، تظهر رسالة تفيد بأن الملف غير موجود:

هذه تثبيت جديد تمامًا.

شكرًا جزيلاً،

جاك

في الدليل أعلاه، استخدمت مجلد /var/discourse لتثبيت بيئة تطوير Discourse. إذا قمت بتثبيته في موقع مختلف، فتأكد من الانتقال (cd) إلى ذلك المجلد (~/discourse في معظم الحالات) بدلاً من المجلد المذكور أعلاه قبل تشغيل أمر sudo nano script/import_scripts/bbpress.rb.

3 إعجابات

مرحباً،

لا أرى مسار “script” في مجلد /var/discourse.

  • جربت ذلك من خلال نسخة جديدة من سوق DigitalOcean لـ Discourse.
  • كما جربت التثبيت الرسمي لـ Discourse عبر Docker.

هذا هو شكل مجلد /var/discourse/scripts:

مع أطيب التحيات

هذا صحيح.

ستحتاج إلى إعداد بيئة تطوير أو اتباع التعليمات الواردة في مواضيع الاستيراد الأخرى حول كيفية تشغيل سكريبت الاستيراد داخل حاوية إنتاجية.

أخيرًا عثرت على Use an import script that requires MySQL للجزء المفقود.

شكرًا لك

إعجاب واحد (1)

@vinothkannans أحاول الترحيل من WPForo إلى Discourse والنص البرمجي/الكود يتجاوز قدراتي. هل يمكنك (أو أي شخص آخر) مساعدتي في هذا؟ شكرًا.

قد تجد حظًا أفضل في النشر في Marketplace. هناك عدد من الأشخاص الذين يراقبون هذه الفئة ويمكنهم المساعدة.

إعجابَين (2)

على الرغم من أن لدينا أيضًا فئة Migration للأسئلة المحددة المتعلقة بالترحيل. :+1:

3 إعجابات

أواجه الخطأ التالي عند اتباع الدليل والوصول إلى النقطة التي أقوم فيها بتشغيل البرنامج النصي للاستيراد. لقد قمت بتثبيت discourse وفقًا لـ هذه التعليمات

myuser@tmp-discourse:~/discourse$ IMPORT=1 bundle &amp;&amp; IMPORT=1 bundle exec ruby script/import_scripts/bbpress.rb

[!] حدث خطأ أثناء تحليل `Gemfile`: لا يمكنك تحديد نفس الجوهرة مرتين بمتطلبات إصدار مختلفة.
لقد حددت: sqlite3 (~> 1.3, >= 1.3.13) و sqlite3 (>= 0). لا يمكن لـ Bundler المتابعة.

# من /home/myuser/discourse/Gemfile:251
# -------------------------------------------
# group :generic_import, optional: true do
&gt;    gem "sqlite3"
#    gem "redcarpet"
#  -------------------------------------------

لقد نجحت في ذلك عن طريق تغيير هذا في Gemfile

# ملاحظة: في وضع الاستيراد، يمكن أن يهم إصدار sqlite كثيرًا، لذا نلتزم بإصدار معين
#gem "sqlite3", "~> 1.3", ">= 1.3.13"
  gem "sqlite3"

كما احتجت إلى تثبيت هذه الحزمة في تثبيت Ubuntu 22.04 LTS الخاص بي

sudo apt install freetds-dev