هل يمكن إعادة معالجة رسائل الدردشة بشكل مجمع؟

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

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

هناك

rake chat_messages:rebake_uncooked_chat_messages

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

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

هل هناك طريقة يمكننا من خلالها تمييزها جميعًا على أنها غير مطبوخة؟ (حوالي 99٪ من رسائل الدردشة لدينا تحتاج إلى إعادة خبز، لذا فإن تحديدها جميعًا على ما يرام)

إعجابَين (2)
Chat::Message.update_all(cooked_version: nil)

أعتقد أن هذا سيفي بالغرض، لكنني لا أقدم أي وعود بأن ذلك لن يدمر حياتك.

إعجابَين (2)

هه، لا يمكن أن يكون أسوأ بكثير مما هو عليه بالفعل.

تأكد من إنشاء نسخة احتياطية أولاً!

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

بدافع الفضول، هل نجح ذلك؟

على حد علمي، أعتقد أن ما انتهينا من فعله كان:

  1. تشغيل:
  1. استعادة جميع الرسائل التي استطعنا من نسخة احتياطية أقدم
  2. إعادة خبز الباقي
3 إعجابات