Plots2: 现有标签未在搜索栏自动建议中显示为完全匹配

创建于 2021-05-12  ·  3评论  ·  资料来源: publiclab/plots2

请描述问题(或想法)

在问题发生之前发生了什么? 或者这个想法能解决什么问题?

不是一个错误,但更多的是我没有意识到的观察结果限制了我在使用搜索栏时看到的结果:之前搜索地图内容时,我在搜索栏中输入了mapping ,并且该标签没有出现在自动建议的标签列表中(见截图)。 但是今天我在一个帖子上看到mapping标签并点击它,从标签页面看到有相当多的内容带有mapping标签!

mapping results

你期望看到什么你没有看到?

考虑到mapping标签页面存在并且附加了很多内容,我希望在将该术语输入搜索栏中时会看到mapping作为完全匹配出现在自动建议的标签列表中标签。

请告诉我们在哪里看

带有mapping标签的现有内容: https :

你的 PublicLab.org 用户名是什么?

仓鼠

add-code-links discussion enhancement help wanted

最有用的评论

@bhamster07感谢您提供非常清晰的观察和想法! ✨

我将尝试在这里梳理一些细节以提供帮助。 我的问题:

  1. 当前的排序是什么?
  2. 我们可以在代码中的哪个位置插入精确匹配以将其添加到结果中?
  3. 添加第二个查询会导致任何减速吗? (自动完成对用户非常敏感——我们希望它尽可能快)
  4. 一旦我们将它添加到顶部,我们是否需要担心从剩余的结果中过滤掉它? (这看起来很简单,为什么不呢)
  5. 在顶部添加完全匹配会导致网站上的任何其他功能受到影响吗? (即,我们是否将此匹配生成器用于我们不希望进行此修改的其他目的?)

好的,所以 1) 我看到这个端点,我们正在响应自动完成: https :

https://github.com/publiclab/plots2/blob/158fadc6ed12b66bd0b17f65a134cef59b81cfee/app/controllers/tag_controller.rb#L394 -L401

请注意,这与https://publiclab.org/tags上搜索框中的标签自动完成不同,后者来自这段代码

至于 5)我想谨慎地说,我们使用此代码的唯一其他地方是在https://publiclab.org/search/tags

我认为这意味着我们可以在这个更深层次的 API 代码中的列表顶部插入完全匹配:

https://github.com/publiclab/plots2/blob/158fadc6ed12b66bd0b17f65a134cef59b81cfee/app/services/search_service.rb#L79 -L91

我还想为此编写一个功能测试,以确认最匹配的是完全匹配。 我认为这将基于这个测试,并遵循它,使用像“光谱仪”这样的完整词:

https://github.com/publiclab/plots2/blob/3a05ae2d547c71d5a7d173741586397947fcbc00/test/functional/tag_controller_test.rb#L435 -L440

这很好,因为对于部分匹配,我们仍然会看到这个排序:

https://github.com/publiclab/plots2/blob/3a05ae2d547c71d5a7d173741586397947fcbc00/test/functional/tag_controller_test.rb#L439

但是在完全匹配中,我们会看到项目 1 和项目 2 交换了位置。 这应该是一个伟大而具体的测试。

我想提议将此添加到我们联合 Outreachy 和 GSoC 团队的标记项目中! cc @17sushmita @Manasa2850 (关于您的项目计划如何重叠的更多信息!🎉)

所有3条评论

感谢您打开第一期! 这个空间受我们的行为准则保护- 我们随时为您提供帮助。
请按照问题模板帮助我们帮助您👍🎉😄
如果您有屏幕截图或 gif来分享演示该问题,那真的很有帮助! 📸
请加入我们的Gitter 频道进行一些头脑风暴讨论。

@bhamster07感谢您提供非常清晰的观察和想法! ✨

我将尝试在这里梳理一些细节以提供帮助。 我的问题:

  1. 当前的排序是什么?
  2. 我们可以在代码中的哪个位置插入精确匹配以将其添加到结果中?
  3. 添加第二个查询会导致任何减速吗? (自动完成对用户非常敏感——我们希望它尽可能快)
  4. 一旦我们将它添加到顶部,我们是否需要担心从剩余的结果中过滤掉它? (这看起来很简单,为什么不呢)
  5. 在顶部添加完全匹配会导致网站上的任何其他功能受到影响吗? (即,我们是否将此匹配生成器用于我们不希望进行此修改的其他目的?)

好的,所以 1) 我看到这个端点,我们正在响应自动完成: https :

https://github.com/publiclab/plots2/blob/158fadc6ed12b66bd0b17f65a134cef59b81cfee/app/controllers/tag_controller.rb#L394 -L401

请注意,这与https://publiclab.org/tags上搜索框中的标签自动完成不同,后者来自这段代码

至于 5)我想谨慎地说,我们使用此代码的唯一其他地方是在https://publiclab.org/search/tags

我认为这意味着我们可以在这个更深层次的 API 代码中的列表顶部插入完全匹配:

https://github.com/publiclab/plots2/blob/158fadc6ed12b66bd0b17f65a134cef59b81cfee/app/services/search_service.rb#L79 -L91

我还想为此编写一个功能测试,以确认最匹配的是完全匹配。 我认为这将基于这个测试,并遵循它,使用像“光谱仪”这样的完整词:

https://github.com/publiclab/plots2/blob/3a05ae2d547c71d5a7d173741586397947fcbc00/test/functional/tag_controller_test.rb#L435 -L440

这很好,因为对于部分匹配,我们仍然会看到这个排序:

https://github.com/publiclab/plots2/blob/3a05ae2d547c71d5a7d173741586397947fcbc00/test/functional/tag_controller_test.rb#L439

但是在完全匹配中,我们会看到项目 1 和项目 2 交换了位置。 这应该是一个伟大而具体的测试。

我想提议将此添加到我们联合 Outreachy 和 GSoC 团队的标记项目中! cc @17sushmita @Manasa2850 (关于您的项目计划如何重叠的更多信息!🎉)

非常感谢你用所有这些细节来解决这个问题

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

divyabaid16 picture divyabaid16  ·  3评论

noi5e picture noi5e  ·  3评论

grvsachdeva picture grvsachdeva  ·  3评论

keshavsethi picture keshavsethi  ·  3评论

milaaraujo picture milaaraujo  ·  3评论