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

هل الفئة ‘المنشورات المحذوفة’ غير معروضة؟
هل لديك تصنيف بعنوان URL deleted-posts؟ يبدو أن المشاركات في لقطة الشاشة الخاصة بك تنتمي على الأرجح إلى تصنيفات لها عناوين URL مختلفة.
![]()
إذا قمت بحذف الفئة حسب الفئة، فسيتم حذف جميع المشاركات التي ليست في ‘deleted-posts’!
لذا، هل يمكنك مساعدتي في حذف ‘deleted-posts’ من قاعدة البيانات؟
أنا أيضًا أحاول إيجاد طريقة للقيام بذلك. بعد بحث طويل هنا على Meta، وتجربة الكثير من المحاولات والفشل، أصبحت الآن مرتبكًا تمامًا بشأن الأمر كله.
هل يمكننا بالفعل حذف المنشورات المحذوفة نهائيًا من قاعدة البيانات؟ وكيف؟
إذا كان بإمكانك حذف فئة، فيمكنك حذف المنشورات المحذوفة.
أقوم الآن بإعادة بناء تطبيق الاختبار الخاص بي لتثبيت مستكشف البيانات
![]()
لست متأكدًا من كيفية القيام بذلك. كنت فقط أشير إلى أن الأمر الذي كتبته يبدو أنه يبحث عن تصنيف يحتوي على الرمز deleted-posts.
عند حذف فئة باستخدام مهمة Rake، يتم حذف جميع المنشورات (وليس المواضيع فقط) الموجودة بداخلها. ومع ذلك، يتم الحذف بشكل ناعم (soft delete) فقط.
لا زلت غير متأكد من كيفية إزالة المنشورات فعليًا من قاعدة البيانات. كما أنني غير متأكد من كيفية التخلص من الملفات المرفقة المرتبطة بمنشوراتي المحذوفة. كلا الأمرين يسببان لي صداعًا كبيرًا في الوقت الحالي.
أعتقد أن المرفقات سيتم تنظيفها بواسطة إحدى المهام اليومية، بشرط ألا تكون جزءًا من أحدث إصدار للمنشور. لذا، فإن تغيير المنشور المحذوف إلى “(حذفه المشرف)” أو ما شابه سيجعل المرفق جزءًا من سجل التعديلات، مما سيعزله (وبالتالي سيتم التقاطه في عملية تنظيف “إزالة العناصر المعزولة”).
لكنني مجرد أضع فرضيات، لذا قد يكون هذا غير صحيح. ![]()
المصدر:
إذا قمت بتسجيل الدخول إلى PostgreSQL، فيمكنك حذفه من قاعدة البيانات.
أنا أراجع مهام rake للحذف الحالية وأحاول فهم كيفية عملها. ربما يمكن للأشخاص الذين أنشأوا مهمة الحذف الحالية تنفيذ شيء ما يسمح لنا بحذف المنشورات المحذوفة.
نعم، هذا صحيح.
للتخلص من مرفق، يجب عليك إزالة محتويات المشاركة ثم حذف المشاركة.
إذا كان لديك أي أمر أو شيء مفيد وسريع، فيرجى مشاركته معي!
شكرًا لك يا ريتشارد و@JammyDodger!
مشكلتي الوحيدة هي أنني أملك 20,000 منشور يجب تطبيق ذلك عليها. هل تعرف أي اختصارات؟
أخشى أنني في بداية رحلتي مع منصة Discourse، لذا أفتقر إلى الخبرة اللازمة لذلك. ![]()
هل من الممكن تعديل هذا لاستهداف المنشورات المحذوفة بدلاً من منشورات المستخدم لتحقيق نتيجة مماثلة؟
Post.with_deleted.where('deleted_at is not null').update_all(raw: 'تم حذف هذا المنشور', cooked: 'تم حذف هذا المنشور')