几乎没有关于此的文档,并且插件 API 文件没有注释来解释此函数的使用。此外,我唯一能看到它使用的地方是在插件中,而不是在核心中。那么 api.addSaveableUserOptionField() 具体是做什么的?使用它是否需要额外的配置?
我不知道,但这是我发现的。\n\n但首先——我的问题是,你为什么关心?你想做什么吗?但也许如果你想创建一个具有用户选项的插件,这就是如何做到。它不用于核心,因为它是一个钩子,特别是供插件拥有自己的用户选项。\n\n[quote="NateDhaliwal, post:1, topic:381049"]\naddSaveableUserOptionField\n[/quote]\n\n看起来它在 Chat 插件中使用,就像这样:\n\ndiscourse/plugins/chat/assets/javascripts/discourse/initializers/chat-user-options.js at main · discourse/discourse · GitHub UserUpdater。\n\ndiscourse/plugins/chat/plugin.rb at main · discourse/discourse · GitHub
是的,我计划在一个插件中设置用户设置。我之前看到聊天和AI(我没记错的话)使用了此功能来添加用户设置,所以我想知道是否有文档记录了实现方法。
回到这个问题,这里似乎有更多信息。
这现在列出了 3 个函数:addSaveableUserField(), addSaveableUserOption(), 和 addSaveableCustomFields()。
第一个似乎是指添加和保存管理员定义的自定义用户字段。然而,后两个不太清楚。它们是否需要一个插件才能在后端使用 register_custom_user_field :...?是否需要做更多的事情,还是可以在主题组件(TC)中使用?
谢谢。
看起来它适用于通过用户体验(UX)添加的自定义字段和通过插件添加的自定义字段。对于自定义字段,我相当确定它们的名称类似于 user_field_1。例如,您可以使用数据浏览器(data explorer)查看表。或者,它可能只意味着通过用户体验(UX)添加的字段(“管理员定义的个人资料字段”),在这种情况下,您将使用创建它时给它的名称。我建议两种方法都试试。
而且 GitHub 宕机了,所以我无法在那里查看代码。