除了 @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。

