扩展现有控制器?

如果你确实需要添加功能,你应该创建一个插件或主题组件,而不是分叉 Discourse。

你可以在主题组件中做到这一点,所以你不需要插件,但如果你正在制作插件,你也可以在插件中包含前端更改。Developing Discourse Plugins - Part 1 - Create a basic plugin。寻找添加类似功能的插件也是一个好方法。有一个名为 all-the-plugins 的 Discourse 仓库,你可以用它来搜索示例。

如建议的那样,拥有这些字段的公共版本和私有版本似乎是一个不错的解决方案,但你也可以在插件中添加用户字段,并控制如何以及是否将这些字段添加到序列化器中以显示它们。

这就是主题组件的作用。Theme Developer Quick Reference Guide 可以作为开始。

2 个赞