بخلاف الموضوع الذي ربطه @JammyDodger، كانت هناك بعض الطلبات الأخرى لوظائف مماثلة
- Hierarchical group membership (groups inside groups)
- Parent groups and sub-groups
- https://meta.discourse.org/t/creating-subgroups/200812
كانت هناك أيضًا طلبات لعرض المجموعات بشكل هرمي:
أقوم بتدوين هذا فقط للتأكد من أن إضافة برنامج نصي للأتمتة هو أفضل طريقة للتعامل مع هذا، أو ما إذا كانت وظيفة يجب إضافتها إلى كود مجموعات Discourse الأساسي.
لقد كنت أعبث بهذا للمتعة. إنه نوع من الارتباط ببعض العمل الأخير الذي كنت أقوم به مع Zapier. لا تتردد في تجاهل بقية هذا المنشور.
بافتراض أن برنامج نصي للأتمتة هو النهج الصحيح، فإن العقبة الوحيدة هي أن مكون group الخاص بمكون الأتمتة يقبل مجموعة واحدة فقط. لذا إما أن يتم تحديث مكون group لقبول أكثر من مجموعة واحدة، أو يجب إضافة مكون groups جديد. لقد أضفت مكون groups إلى فرع التطوير المحلي الخاص بي لاختباره. مع وضعه في مكانه:
أضف مستخدمًا إلى مجموعة رئيسية عندما يتم إضافته إلى أي من قائمة المجموعات الفرعية:
قم بإزالة مستخدم من مجموعة رئيسية إذا تم إزالته من جميع المجموعات الفرعية المدرجة:
إذا كان ذلك يساعد، فإن المشغلات والبرامج النصية موجودة في مكون إضافي: automation-script-example/plugin.rb at main · scossar/automation-script-example · GitHub. لاحظ أن هذا الكود يفترض أنه تم إضافة مكون groups إلى https://github.com/discourse/discourse-automation/tree/main/assets/javascripts/discourse/components/fields.

