جعل خيار معلق من مفتاح إجراءات الموضوع

أنا مهتم بإضافة خيار إضافي ضمن قائمة “المفتاح” في إجراءات الموضوع. وتحديداً، خيار تغيير حالة الموضوع إلى “قيد الانتظار” (لنقلها إلى حالة الانتظار، على سبيل المثال).

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

4 إعجابات

أنا لا أتابع. لماذا لا تحدد مؤقتًا للإشارة المرجعية في المنشور الأول؟

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

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

انتظروا، هل نتحدث عن منشورات موجودة بالفعل في قائمة المراجعة؟ أم عن إجبار المنشورات الحالية على الدخول في قائمة المراجعة؟

هذه فكرة مثيرة للاهتمام…

إجبار المنشورات الحالية على الدخول في قائمة المراجعة.

@pfaffman هذا صحيح.

@codinghorror هل هناك أي شيء آخر يمكنني تقديمه؟

أعتقد أن هذه فكرة جيدة، لكنني لا أعرف مدى صعوبة تنفيذها من الناحية التقنية. ما رأيك يا @sam؟

إذا لم تكن هناك ردود، أعتقد أن الأمر لن يكون صعبًا جدًا… ربما يعرف @eviltrout أو @Roman بالضبط مدى تعقيد الأمر.

أعتقد أنه بمجرد نقل الموضوع إلى حالة “قيد الانتظار”، قد نضطر إلى حذفه نهائيًا ونقله إلى جدول آخر.

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

أعتقد أن أي منشور يجب أن يعمل، لكن الموضوع حالة خاصة قليلاً… فقط تخيل أن هذا المنشور يحتوي على كلمة نابية، هل ستجبره وتضعه في قائمة المراجعة؟

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

نعم، أي منشور فردي يجب أن يكون سهلاً نسبيًا (قد يختل التسلسل، لكنه قد يعمل في بعض الأحيان)، أما ما يصبح معقدًا جدًا فهو محاولة التعامل مع موضوع كامل يحتوي على ردود.

لا أعرف مدى أهمية حالة الاستخدام هذه؟ يبدو أنها كذلك حسب منشئ الموضوع الأصلي.

جين تنشئ موضوعًا: “أحب أكل الزبادي”
جيم يرد: “ألا تعرف… هذا الموقع مخصص لـ ‘لا زبادي’”

الموقع مخصص للحلوى، لكن مشغلي الموقع لا يحبون الزبادي، الساعة 5 صباحًا… لا يستطيعون التعامل مع هذا الآن.

انقر على الزر… للعودة إلى قائمة انتظار الموافقة على موضوع جين. يمكننا التعامل مع هذا غدًا.


المشكلة هي… كيف نتعامل مع هذا؟ ماذا يحدث للطوابع الزمنية عند إعادة النشر وما إلى ذلك؟ قائمة المراجعة لا تدعم منشورات متعددة في مجموعة واحدة.

أقول إن الطريقة “المُدارة حاليًا” للتعامل مع هذا هي:

  • “اجعله غير مدرج”
  • راسل المشرفين للتنبيه حتى لا ينسى أحد الأمر

العيب هو أن الناس لا يزالون بإمكانهم رؤيته إذا كان لديهم الرابط.

الخيار الآخر قد يكون: “اضغط على حذف”، ثم أبلغ عن المحتوى المحذوف (لا أعرف ما إذا كانت قائمة المراجعة تدعم ذلك، لكن قد يكون من المعقول السماح للمشرفين بالإبلاغ عن المحتوى المحذوف)

إعجابَين (2)

نعم، الفرق الكبير هو أن وضع موضوع في قائمة الانتظار قبل إنشائه أسهل بكثير من فعل ذلك بعده.

ومع ذلك، لدينا دعم لإخفاء الموضوع حتى يتم التعامل معه في قائمة الانتظار. يمكن لـ @Roman تقدير ذلك عندما يعود الأسبوع المقبل.

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

@كيد، هل هذا يعمل بالنسبة لك؟ هل جربت ما سبق؟ :backhand_index_pointing_up:

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

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

بغض النظر، سأستخدم روتين “اجعل غير مدرج” إذا لم يتطور أي شيء آخر في هذا الشأن.

شكراً لاهتمامك بالموضوع.

3 إعجابات

نعتذر عن التأخير. لقد فكّرتُ كثيرًا في هذا الأمر.

إن جعل المنشور قيد الانتظار يعني حذف المنشور نهائيًا وتخزين جميع البيانات الضرورية لإعادة إنشائه داخل سمة الحمولة (payload) للعنصر القابل للمراجعة. اضطررتُ إلى إعادة كتابة هذا الأمر عدة مرات لأنني كنت قلقًا بشأن فقدان البيانات خلال هذه العملية بسبب الارتباطات المصنفة بـ dependent: :destroy أو dependent: :delete_all. ومع ذلك، وبعد بعض الاختبارات، أعتقد أن تنفيذ ذلك آمن.

تنفيذ هذا الإجراء عندما لا يحتوي الموضوع على ردود أو عندما لا يكون المنشور الأول يجب أن يتطلب جهدًا منخفضًا إلى متوسطًا. فكل المنطق الخاص بوضع المنشور في قائمة الانتظار موجود داخل طريقة NewPostManager#enqueue، لذا سنحتاج إلى استخلاصه إلى فئة منفصلة وإعادة استخدامه. نحن دائمًا نضيف المنشورات قيد الانتظار في نهاية الموضوع بعد الموافقة، لذا فإن إضافتها في موضع محدد سيتطلب قدرًا أكبر قليلًا من العمل.

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

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

إعجابَين (2)

لقد نسيت نشر تحديث هنا. أضفنا زر “إعلام العلم” في نافذة العلم، بجانب “اتخاذ إجراء…”. عند النقر على المنشور، يتم إرساله إلى الطابور وإخفاؤه، ثم يتم إرسال رسالة إلى المستخدم لإعلامه بأنه سيبقى على هذا النحو حتى يراجعها أحد أعضاء الطاقم.

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

شكرًا لك @Roman

إعجابَين (2)

أعتقد أننا بحاجة إلى مراجعة الصياغة هنا:

من المُربك جدًا تحديد ما يجب اختياره.

ربما نغير عبارة “Flag Post” إلى “إضافة إلى قائمة المراجعة” مع تغيير الأيقونة ربما.

وجود زرين يحملان اسم “Flag Post” أمر مُربك جدًا.

4 إعجابات