神秘的“标签无效”消息

我们有一个托管在 .discourse.group 上的“开源”计划网站。最近,“标签无效”的错误消息一直困扰着尝试发帖的用户。我实在想不通为什么会反复出现这种情况,也不知道该如何解决。希望能得到一些建议。

我担心,一些新加入论坛的成员可能因此被劝退,甚至我们都没察觉到。考虑到我们的论坛还比较新,这是一个严重的问题。


我们的配置:

我们有一个“使用”分类。其目的是要求该分类下的所有帖子必须至少包含一个来自 language 标签组的标签。帖子也可以包含其他标签,但必须始终至少有一个来自 language 组的标签。这是因为我们的论坛是某个软件库的求助论坛,该库提供了多种(差异较大的)编程语言绑定。用户经常忘记说明他们使用的是哪种绑定,而如果不了解这一点,就无法回答他们的问题。

以下是“使用”分类的配置:

language 标签组:


问题说明:

这是当我尝试创建新帖子时发生的情况。奇怪的是,如果我将所有标签都移除,帖子反而可以发布成功(尽管应该要求至少有一个标签)。

示例帖子:

错误消息:

:warning:: 纯属猜测
“c”标签是否可能与分类的“c”路由存在某种冲突?

你好,

我也有同样的问题,但你可以通过编辑标题来修改标签,这对我来说非常有效。

我现在无法复现这个问题,也不知道原因。不过,在我在这里提问之前,这个问题已经持续了几周。我感到非常困惑。

请问有 Discourse 的工作人员能来评论一下吗?

我不明白你说的“你可以通过标题编辑来修改标签”是什么意思。能澄清一下吗?

抱歉,是我的失误。我在编辑话题标签时遇到同样的问题,但创建新话题时没有问题。

我的意思是,当你编辑标题时,可以添加或删除标签,这对我来说是有效的。

嗯,差不多吧 :sweat_smile:

重建后应该可以工作 :crossed_fingers:

我只是惊讶于竟然允许创建这个标签!

在 2.6.0.beta1 ( b9174c8e8a ) 版本中,修复之前我无法创建它(尽管没有任何错误消息,点击带有“c”的标签组的保存按钮时,该组并未保存,刷新页面后,“c”标签也不会出现)。

你知道这个修复什么时候会应用到托管在 .discourse.group 的站点吗?我以前不太关注版本发布,因为一切都由 Discourse 团队方便地管理和更新。:slight_smile:

啊,是的,我忽略了那部分:thinking: 我不确定托管站点的更新情况,但在此期间,你可以先使用“language C”或其他名称,并在修复部署后立即将其更正为“C”。访问 https://your.domain/tag/your-tag,点击“详情”,然后选择“重命名”。

另外,让我为这个新的 GIF 组件致敬:

:slightly_smiling_face:

您说得可能没错,也许 discourse/app/models/tag_group.rb at main · discourse/discourse · GitHub 中的 TagGroup 类可以受益于 Tag 类的 validate :name_validator,但我不确定……这超出了我的能力范围 :sweat_smile:

我在 我的 discourse 实例 上创建主题时,偶尔还会遇到此问题:

如果我删除大部分标签,创建就会成功。

之后,我可以编辑标题/标签,然后再次添加缺失的标签,这次不会出现错误消息。

此问题已存在数月/数年。我找不到规律,也许是在撰写初始帖子时尝试创建标签时发生的,但不确定。

更新 1: 我是网站的管理员,并使用此帐户撰写新帖子,因此我强烈认为这不是权限问题本身。