在具有父级的多个标签组中使用标签

我遇到了一个情况:我需要在多个使用父标签的标签组中使用同一个标签。虽然可以将该标签添加到多个组中,但当我选择父标签时,该组中的子标签不会在列表中显示。这有点难以解释,所以这里举个例子:

父标签 1
唯一子标签 1
通用标签
父标签 2
唯一子标签 2
通用标签

因此,当“通用标签”同时存在于两个父标签组中时,选择任一父标签后,“通用标签”都不会在标签选择器中显示;如果我从其中一个组中移除该通用标签,它就会在另一个组中显示。

这是预期的行为吗?我看不出有什么理由不能将通用标签与每个父标签一起使用,但也许实现起来太复杂了。

3 个赞

@neil 可能最适合回答这个问题。他在标签和群组方面做得最多。

5 个赞

这是一个错误。它应该为两个父标签都返回 common-tag。我会着手修复。

4 个赞

已修复。感谢反馈。

4 个赞

谢谢 Neil,这解决了大多数情况下的问题,但我仍然遇到该问题。经过一番尝试,我终于找到了原因。父标签位于一个标签组中,如果启用了“每个主题从该组中限制一个标签”选项,那么通用标签将不会显示。

1 个赞

我尝试过支持此功能,但未能找到解决方案。如果不重新审视并重构那个令人头疼的 filter_allowed_tags 方法,解决这个问题(以及未来任何其他标签功能)可能需要很长时间。将所有逻辑塞进一个巨大的 SQL 语句中已经行不通了。

6 个赞

@davidkingham 经过对那段代码的少量重写,我已经修复了那个 bug。

5 个赞