使用一个标签时一切正常,但使用多个标签时,有时会阻止用户发帖并显示该错误信息。
您可以稍后编辑帖子并添加任意数量的标签,有时系统也会允许您发帖。
后端是否有需要更改的设置?也许这种间歇性现象意味着用户无法同时创建多个标签,或者在已有标签存在时无法创建新标签。
其他人遇到过这种情况吗?
使用一个标签时一切正常,但使用多个标签时,有时会阻止用户发帖并显示该错误信息。
您可以稍后编辑帖子并添加任意数量的标签,有时系统也会允许您发帖。
后端是否有需要更改的设置?也许这种间歇性现象意味着用户无法同时创建多个标签,或者在已有标签存在时无法创建新标签。
其他人遇到过这种情况吗?
您使用的是工单插件还是标签组?我认为当我尝试在其他地方使用工单标签时,也会遇到这种情况。
您的分类设置中是否有任何与标签相关的配置?是否发现报错的标签存在某些共性?如果您能够复现该问题,是否尝试过查看日志或开发者控制台?在安全模式下是否也会出现此问题?
谢谢您的回复。我并没有使用这两个插件中的任何一个。
我的网站中有几个完全相同的重复标签,这似乎导致了问题,但仅在它们与其他标签组合时才会出现。两个 ‘web-dev’ 标签是完全相同的。
以下是控制台中显示的错误代码:
POST Public Happiness 422
你是怎么创建两个“web-dev”标签的?![]()
我也想了解一下,Neil ![]()
通常我在创建帖子时会生成它们。
我有几个插件会使用标签,但其中没有一个将’web-dev’定义为标签……不过,它们过去可能确实这样定义过。我们的菜单链接组件使用的是’web-developers’。
嗨,Andy!哎呀,真抱歉这个问题这么棘手。你网站 Public Happiness 的标签页链接有点帮助,我觉得——正如你所见,那里有不少奇怪的问题……没有标签组,这点倒是很清楚。如果你按名称(字母顺序)排序,会看到在 D 之后出现了一些空白标签……这很奇怪,也指向了某个更大的问题。
你能确认一下在安全模式下(仅启用官方插件,未启用任何主题自定义)是否也看到同样的问题吗?
你是否在重建实例时,已经在 app.yml 中删除或注释掉了你不想要的那些非官方标签插件?也许它们仍在产生影响。
我怀疑所有空白标签的出现,都是每次你在保存多个标签时遇到问题导致的,包括那些明显奇怪的标签,因为它们在标签页上多次出现。你可以通过加载标签页、尝试复现问题,然后查看是否新增了一个空白标签来测试这一点。
除了上述建议之外……如果我是你,我会先进行一些标签整理。
通常来说,你不需要这么多标签,尤其不应该有那些可能只会出现一次的标签。你可以通过标签页删除或合并标签。我建议直接删除那些重复出现的标签,或者将它们合并到一个新的临时标签中,确保原始标签已被删除,然后再将该临时标签重命名为你想要的标签名称。
在这种情况下,任何使用标签名称的 UI 都可能会出现意外行为。你需要使用 Rails 控制台删除所有重复的标签记录以及名称为空的标签。之后,请检查你使用的插件,排查导致这些问题的错误。此外,tags 表可能缺少防止重复标签名称的索引。
@syl 这看起来是否可能是 Docuss 的 bug?它在使用标签时表现得不合常规。我有一个删除未使用标签的选项,其中大约一半是 Docuss 标签。其余的似乎来自已删除的帖子。(不包括空白标签。)
这解决了隐藏/空白标签的问题。但问题仍然存在,因此必定是其他原因导致的。我仍在调查中。
好的,我无法确定具体原因,但以下是我目前发现的线索。
该错误在安全模式下(启用所有插件)以及关闭主题时均会出现。但这并不意味着是默认系统或我们安装的默认系统存在 bug,因为更有可能是某个插件将重复的标签写入数据库,即使该插件已关闭,这些标签仍残留其中并引发问题。
为了修正此问题,我一直在搜索重复标签并将其更改为其他名称(例如将 ‘web-dev’ 改为 ‘webdev’)。
我注意到有些标签被设置为“帖子”状态,但却未显示在列表中。因此,网站会提示我还有 12 个剩余的 ‘web-dev’ 标签,但搜索功能却无法找到它们。
许多帖子在标签输入框中包含了完全相同的标签,删除其中一个时,另一个也会被一并删除。
我目前的最佳推测是:引发问题的标签同时也被作为链接嵌入到帖子正文中。因此,当有人在帖子正文中输入 #web-dev 时,系统会创建一个标签;如果该标签已存在于帖子标题中,就会生成重复标签。
我打算尝试强制触发这种情况,以便观察其发生过程。
不过,似乎还有其他问题。如果你查看 这个搜索结果,会发现置顶帖子实际上并不包含 ‘web-dev’(因为我已将其更改),但搜索功能仍然在某处检测到了它。
编辑:忽略最后那部分,搜索功能只是过于“智能”了。使用 相同的搜索 并加上引号搜索 " web-dev " 即可排除这些误报。
……但“推荐话题”功能仍然能发现那些“搜索”功能看不到的标签:
更新:问题依旧存在。我能找到的唯一重复标签是 web-dev。我已删除所有我能找到或通过搜索栏发现的该标签。现在,如果我使用 web-dev 标签发布帖子,帖子会正常发布,而不会再出现“无效”错误提示。但点击 web-dev 标签试图查找系统提示存在于论坛中的另外三个标签时,却显示 404 错误。我不确定这些标签是存在于帖子中,还是数据库中的某种“幽灵”残留。
这是我使用 web-dev 标签发布的测试帖子,该标签我已费尽周折从论坛中移除。目前我是否需要在数据库层面直接清除该标签?(我没有发现其他标签造成类似问题)。
好的,看来现在问题已经解决了,只需浏览我们的网站,移除那个“web-dev”标签,然后使用“删除未使用的标签”工具即可。
遗憾的是,我无法确切说明导致该问题的原因,以便将来更好地帮助其他人。我会继续留意,看看这种情况是否会再次发生。
我修改了你们之前编辑的标题。我不确定是哪个插件导致的。事实上,唯一可以排除的是 Docuss,因为该插件的作者亲自过来检查了是否是他们的代码出了问题,并认为不是。