استعادة الحذف دفعة واحدة

متابعةً للنقاش من أفضل طريقة لإزالة الوصول العام مؤقتًا إلى مواضيع المستخدم؟:

هل سيكون من الممكن تمكين محدد حذف جماعي في قائمة /u/username/deleted-posts؟ على حد علمي، سيتطلب ذلك نصًا برمجيًا تقنيًا صعبًا للغاية وخطيرًا محتملًا لاستعادة حذفها برمجيًا.

لكي تكون هذه الميزة مفيدة قدر الإمكان، سيكون من الأفضل التمييز بين المواضيع المحذوفة والردود المحذوفة. ربما يمكن الحفاظ على عنوان URL الحالي /u/username/deleted-posts، ثم إضافة /u/username/deleted-posts/topics و /u/username/deleted-posts/replies إليه.

إعجابَين (2)

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

يبدو هذا أيضًا طريقة أسهل وأكثر أمانًا للحذف البرمجي، بافتراض أنني أستطيع معرفة كيفية إنشاء قائمة بمعرفات المواضيع المحذوفة للمستخدم:

سيؤدي هذا إلى العثور على المواضيع المحذوفة التي أنشأها user_id 1.

dts=Topic.with_deleted.where(user_id: 1).where("deleted_at is not null");
dts.pluck(:deleted_at, :id)
dps=Post.with_deleted.where(user_id: 1).where("deleted_at is not null");
dbs.pluck(:deleted_at, :id)

ويبدو أنه يمكنك إلغاء حذف المشاركات بشيء مثل

dp=dps.first
dp.deleted_at=nil
dp.deleted_by=nil
dp.save

وستفعل شيئًا مشابهًا للمواضيع.

إذا حان الوقت لإلغاء حذف الأشياء، فيجب أن يكون ما ورد أعلاه كافيًا لشخص يعرف القليل عن rails ليكون قادرًا على إلغاء حذفها جميعًا.

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

أخيرًا، أعتذر مرة أخرى عن معاملة طلب الميزة كـ Support. أعتقد أنني أفعل ذلك لأنه ليس لدي القدرة على إنشاء الميزات، ولكن يمكنني حل المشكلات.

4 إعجابات

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

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

إنها بالتأكيد حالة هامشية، لكننا نحاول تتبع الميزات عندما يُطلب منا تنفيذها عدة مرات (خاصة من العملاء) للحصول على فكرة أفضل عن موعد المضي قدمًا :slight_smile:

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