创建和配置自定义用户字段

我认为你可以使用 rails 控制台重新排序它们。我选择使用 ID 输入字段,因为输入名称时更容易出现拼写错误

ids_in_order = [3, 7, 8, 5, 1, 2]

ids_in_order.each_with_index do |id, index|
  UserField.find(id).update!(position: index)
end
1 个赞

这是“重新排序类别”窗口的样子。我猜如果 Discourse 中存在这个功能,也许也可以用于用户字段?

1 个赞

我不这么认为,但我最近编写了一个主题组件,它会隐藏用户卡片和个人资料页面上自定义字段的原始显示,然后再次渲染它们,可以选择使某些内容对 HTML 安全(他们正在通过 API 向用户无法编辑的自定义字段添加一些信息)。我认为可以使用相同的思路向自定义字段添加一个排序字段,以更改它们在卡片和/或个人资料上显示的顺序。

我认为您可以使用现有方法对用户字段进行重新排序。每次更改位置后都必须重新打开菜单,这有点不切实际。在移动到多个位置时,这会有些烦人。

但是,一个能让按钮始终可见的组件,或者顶部有一个用于“重新排序模式”的复选框使其在菜单外部可见,就可以改善这种体验了。

1 个赞

哦。真有趣。是的。哎呀。这比我的主意好多了。:rofl:

我有一个自定义字段,并已将其设置为可搜索。然而,在用户页面 /u 上,唯一的搜索框显示为“按用户名筛选”。当我搜索自定义字段的内容时,没有任何结果显示。

我可以在列表中看到这些值(我已在自定义器中启用了该列),因此可以确认这些值确实存在。

我哪里做错了?

奇怪的是,自定义字段的值是链接,例如 u?cards=no&name=Female&order=likes_received,点击后会针对 name 字段中的值执行搜索,但返回结果为空。

以下是该字段的偏好设置:

另外(不知这是否是一个线索),当我按该自定义字段列排序时,无论是升序还是降序,列表顶部总是会出现字段为空的Users(不同的用户)。只有少数用户在该字段中有内容,但我原本预期所有空值都应该在列表的顶部或底部,而不是两者都有。