新用户教程搜索“水豚”无结果

如何重现:

  1. 前往一个托管的 Discourse 实例,并注册一个新用户。我注册的是 internals.rust-lang.org

  2. 按照 @discobot 的“问候!”新用户入门教程进行操作。

  3. 教程主题中的消息 #15 会显示:

  1. 点击搜索图标,在框中输入 capybara,然后点击搜索输入框下方的“在此主题中搜索“capybara””。

  2. 结果是“未找到结果”。我期望找到两条消息(消息 #15,其中写着“尝试在此主题中搜索“capybara”一词”,以及包含水豚照片的早期消息)。

  3. 搜索其他词语确实有效。例如,搜索该主题中的“nasty”会返回两条帖子。

  4. “capybara”一词确实“在所有主题和帖子中”找到。所以它可以被索引。

  5. 我在 2017 年 5 月找到了另一个关于此问题的报告:https://internals.rust-lang.org/t/search-broken-in-internals-forums/5266。所以我认为这不是一个新问题,也不是我个人独有的情况。

我认为此问题的严重程度为 3;虽然它只影响少数用户,并且只是一个表面问题,但它发生在全新用户身上,会给人留下搜索功能不可靠或网站维护不善的印象。

此致,

Tim

1 个赞

Hi! To find out what I can do, say @discobot display help.

1 个赞

我试着重现,但是机器人不想显示教程 :cry:


编辑:算了,它在 3 分钟(太久了!)后回复了。

2 个赞

对我来说是有效的:

不过我是在手机上操作的,所以为了严谨起见,也许在桌面端重试一下比较好。

更新: 桌面端也运行正常。

3 个赞

感谢您的测试!我在 OpenSUSE 桌面上使用了 Firefox。我也刚在手机的 Firefox 上检查过,结果也是“未找到结果”:

再次说明,以防万一:水豚照片确实已插入到消息线程中。搜索单词capybara(水豚)没有返回任何结果,尽管它确实出现在消息 #15 中。

附注:我本不想让事情复杂化,但以防万一很重要:带有水豚照片的修改后的消息已不在我的线程中。我不知道它是如何被恢复的。这是一个非常具体且不太可能发生的问题,我想它只是我个人的个例,除非有 2017 年 5 月另一位用户的报告。但如果您觉得最好将此主题存档而不必再花费时间,如果多人无法重现,我也可以接受。

2 个赞

我其实一直在想为什么“水豚”在我的网站上搜索量一度是最高的,但现在一切都说得通了 :face_with_crossed_out_eyes::rofl:
我显然没有完全按照教程进行操作。

5 个赞

我也是。但我当时非常确定是谷歌或其他什么东西出了故障,所以我创建了一个关于水豚的科普话题。

后来我感觉……有点傻 :joy: 但现在我对水豚这种生物有了更多的了解。所以是双赢的局面?

3 个赞

您似乎必须显式选择“在此主题中搜索”选项。我刚刚完成了教程,当它到达那个点时,我搜索了**“capybara”**:

……然后按了 Enter:

但是,如果我返回搜索并单击**“在此主题中搜索 capybara”**选项:

……它就能正常工作!

教程确实是这样说的(重点是我的):

尝试在此主题中搜索词“capy​bara”

……但我同意这并不明显。我怀疑该教程是在 Discourse 仍然支持“即时搜索”时编写的,因此搜索结果会在您按下 Enter 键之前出现。(另外,我相信“即时搜索”也会搜索私人消息)。

2 个赞

我做到了。请参见 OP 第 4 点(也参见第 6 点和第 7 点)。另请参见我发布的移动网站截图中的复选框已选中。

到目前为止,似乎没有人能够重现我遇到的错误。我怀疑我的 discobot 教程消息线程已损坏。或者,上帝是一只水豚,而我在他们的黑名单上。

这非常有趣。我刚看了我的测试帖子,果然,水豚消失了!编辑历史显示 discobot 编辑了帖子,但实际的更改却不见了:

这似乎是故意的:

……当 discobot 状态机进入新状态时会调用它:

清理只应该在你退出 tutorial_search 状态时发生,而这在你用 :herb: 表情符号回复时发生。你在你的帖子中这样做过吗?

你还记得在帖子被编辑后等待了多久才执行搜索吗?服务器是否可能出现备份,以至于在你搜索时还没有索引到该帖子?

1 个赞

是的,我完成了教程。

我立即就做了。我的意思是,我一次性完成了教程。Discobot 在上午 8:57 添加了“搜索水豚”的帖子,我在上午 9:10(2022 年 8 月 25 日)回复了 :herb:。在这 15 分钟内,我在 internals.rust-lang 上提交了同一个 bug……

我刚刚用 Konqueror 而不是 Firefox 进行了测试。我以前从未在这台笔记本上用过 Konqueror,所以我想这可以排除任何浏览器怪异的可能性。结果是一样的:

当我搜索帖子中的“nasty”时,它显示了两个正确的结果。所以这个帖子索引了;事实上,“nasty”结果之一就是那个包含 \"capybara\"discobot结果,所以那个帖子被索引了。这很奇怪。

谢谢你的关注。

Tim

到目前为止,这可能唯一有用的结果是它有助于找到搜索索引或其他方面的某些问题。我很乐意进行任何有用的测试,或者如果它已经完成了它的使命,我很乐意随时放弃它。

如果您在私信线程中输入单词 capybara 然后搜索它,它会显示出来吗?如果您想完美复制,可以使用确切的文本:

1 个赞

就我而言,我刚刚在 internals.rust-lang.org 上创建了一个帐户进行测试,并且对我来说是有效的:

我创建了一个帐户并完成了教程。当我第一次搜索 Capybara 时,我没有选择“在此主题中”来查看默认搜索结果。我只收到了其他用户关于他们没有找到“capybara”的回复:

但是,当我选择“在此主题中”并重新运行搜索时,正如教程所要求的,结果正如 @simonk 所发布的,符合预期。

1 个赞

所以这不是一个错误,但也许需要更清楚地说明搜索_当前主题内的内容_?

搜索界面已由 @pmusaraj 更改,因此也许说明也需要更新?我不确定。

2 个赞

无需进行用户体验或文档方面的更改。搜索主题内的内容很清晰。此 bug 报告是关于其他问题的,该问题似乎无法重现,因此不太重要。

谢谢!

1 个赞

Simon King,感谢您的建议!我在这里添加了回复:

在此主题中搜索 test 会返回该消息(以及来自 discobot 的另一条消息),但搜索 capybara 仍然没有结果:

|

| |

这似乎是此特定帖子独有的。我不知道如何解释 2017 年的报告,除非是某种用户错误。

好的,非常抱歉。问题出在键盘和椅子之间。

我目前的问题仅仅是由于 capybara 中间的

319 Try searching for the term "capy​bara" in this topic

我完全忽略了那个零宽字符。这解释了为什么搜索该主题目前找不到那个词,正如 Simon King 所解释的,消息 #1 已经被撤销,所以真正的 capybara 已经消失了。

至于我最初的问题,我很乐意认为那只是我不小心按了 Enter 而不是选择了 this topic,就这样吧。

在我最新的后续测试中,我复制粘贴了文本,所以也无意中复制了 #8203;。所以,我很尴尬,但希望没有浪费你太多时间。感谢所有的帮助。

Tim

6 个赞

添加一个新实例的 Discourse,其中包含一个由 discobot 预先编写的主题,内容为“哎呀,点错水豚了!”并指示返回私信并搜索该主题,而不是整个站点,这会使情况非常清楚。

如果 Discourse 预装了其他类似的元主题,那么这可能是一件可以快速完成的事情,否则可能不值得付出努力。只是一个想法。

1 个赞