كيفية تعيين فئات الشريط الجانبي نفسها لجميع المستخدمين

@Moin
طريقة عمل إعادة التعبئة (backfilling) هنا تختلف قليلاً عما قد يتوقعه المرء. نحن لا نقوم ببساطة بإعادة تعيين فئات شريط جانبي لجميع المستخدمين عند تحديث إعداد “فئات قائمة التنقل الافتراضية”. إليك ما نفعله:

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

لذا، فإن عملية إعادة التعبئة لا تفرض حالة الإعداد على جميع المستخدمين، بل تقوم بحساب الفرق (delta) بين القيم الموجودة حاليًا في الإعداد والقيم المضافة أو المحذوفة حديثًا.

السبب الرئيسي وراء هذا الإجراء هو الحفاظ على تفضيلات كل مستخدم على حدة.

هذا هو طلب الدمج (PR) الذي تم فيه إدخال هذا السلوك:

لقد حددنا طريقتين لتحقيق نفس الفئات لجميع المستخدمين:

  1. إضافة الكل، تطبيقه تاريخيًا، إزالة البعض، تطبيقه تاريخيًا.
  2. إزالة الكل، تطبيقه تاريخيًا، إضافة البعض، تطبيقه تاريخيًا.

في محاولة حديثة لتنفيذ ذلك لموقع كبير، لم تعمل الطريقة الأولى بشكل صحيح بينما نجحت الثانية. لذا قمت بتوثيق الطريقة الثانية.

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

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