رسائل خاصة كيفية وضعها في صندوق الوارد من المرسلة عند الاستيراد من vanilla

عادةً، لن يحتوي صندوق الوارد إلا على رسائل خاصة في إحدى الحالتين التاليتين:

  1. استلمت رسالة خاصة أرسلها شخص آخر.
  2. رد شخص ما على رسالة خاصة أرسلتها.

لاحظت أنه عند الاستيراد من منتديات أخرى، لا تظهر الرسائل الخاصة في الفئة رقم 2 بشكل صحيح في صندوق الوارد، حتى لو كان الموضوع يحتوي على ردود. يبدو أن السبب يعود إلى شرط في استعلام صندوق الوارد يتعلق بحقل participant_count للموضوع. لا يقوم أداة الاستيراد بتحديث هذا الحقل بشكل صحيح، لذا يتم تعيينه افتراضيًا إلى 1. عندما تكون قيمة participant_count تساوي 1، لن يعيد الاستعلام ذلك الموضوع لعرضه في عرض صندوق الوارد.

لحل هذه المشكلة، ستحتاج إما إلى تعديل أداة الاستيراد لتشمل عدد المشاركين في الرسالة الخاصة، أو تحديث عدد المشاركين بعد عملية الاستيراد، ويمكن إنجاز ذلك بتشغيل الأمر التالي في وحدة تحكم Rails:

Topic.private_messages.map(&:update_statistics)

لمزيد من التفاصيل: