خطأ استيراد Q2a

أنا أستخدم [سكربت استيراد q2a هذا](https://gist.github.com/[Communiteq](https://www.communiteq.com) (سابقًا DiscourseHosting)/769eff2014d5482f0ab776de03dc3349) وأرى الخطأ أدناه. يرجى المساعدة في حل هذه المشكلة.

هل المشكلة في قاعدة بيانات المستخدمين الخاصة بي أم في السكربت؟ وكيف يمكن إصلاحها؟ شكرًا!

جاري تحميل المجموعات الموجودة...
جاري تحميل المستخدمين الموجودين...
جاري تحميل التصنيفات الموجودة...
جاري تحميل المنشورات الموجودة...
جاري تحميل المواضيع الموجودة...

جاري استيراد المستخدمين
       80 / 447 ( 17.9%)  [208 عنصر/دقيقة]  تتبع الأثر (أحدث الاستدعاءات أولاً):
	12: من script/import_scripts/question2answer.rb:601:in `<main>'
	11: من /var/www/discourse/script/import_scripts/base.rb:47:in `perform'
	10: من script/import_scripts/question2answer.rb:70:in `execute'
	 9: من script/import_scripts/question2answer.rb:89:in `import_users'
	 8: من /var/www/discourse/script/import_scripts/base.rb:877:in `batches'
	 7: من /var/www/discourse/script/import_scripts/base.rb:877:in `loop'
	 6: من /var/www/discourse/script/import_scripts/base.rb:878:in `block in batches'
	 5: من script/import_scripts/question2answer.rb:106:in `block in import_users'
	 4: من /var/www/discourse/script/import_scripts/base.rb:247:in `create_users'
	 3: من /var/www/discourse/script/import_scripts/base.rb:247:in `each'
	 2: من /var/www/discourse/script/import_scripts/base.rb:259:in `block in create_users'
	 1: من /var/www/discourse/script/import_scripts/base.rb:290:in `create_user'
/var/www/discourse/script/import_scripts/base.rb:393:in `find_existing_user': طريقة `downcase' غير معرفة لـ nil:NilClass (NoMethodError)

يبدو أن ملف discourse/script/import_scripts/question2answer.rb at main · discourse/discourse · GitHub قد تم تحديثه مؤخرًا. (أوه، لكنه لا يستورد كلمات المرور).

حقل ما فارغ أو مفقود بينما لا ينبغي أن يكون كذلك. يمكنك تجربة إضافة جملة put في السطر 111 لطباعة بيانات المستخدم ومعرفة ما إذا كان أي من هذه الحقول فارغًا. وإذا كانت كذلك، فحاول تحديد السبب.

@pfaffman شكراً جزيلاً على الرد السريع. نقدر مساعدتك.

لم يعمل برنامج استيراد q2a الرسمي معي مطلقاً، حتى بالنسبة لمواقع q2a الأخرى. لكن سكريبتك يعمل بشكل ممتاز.

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

بالمناسبة، لست ماهراً في البرمجة :frowning: سأقوم فقط باتباع تعليماتك لتعديل الكود.
شكراً!

هذا يتجاوز نطاق ما يمكن إنجازه هنا. إذا كنت بحاجة إلى مزيد من المساعدة، يرجى الاطلاع على Redirecting… وأخبرني باحتياجاتك.

@pfaffman جربت الحل أدناه في السطر 111 وقد نجح. هل تلاحظ أي مشكلة في هذا الكود؟ أخطط لحذف جميع المستخدمين ذوي معرف البريد الإلكتروني/اسم المستخدم أدناه بعد الاستيراد.

شكرًا مرة أخرى لمساعدتك!

        if !username
            username = "userempty"
        end

        if !email
            email = "test@example.com"
        end

        puts "username: #{username}"
        puts "email: #{email}"