python - 使用 python redisearch 客户端按标签过滤搜索
问题描述
我有一个带有 TagField 的索引,像这样创建
create_index([TextField("enc_id"), TextField("title", 2.0), TagField("tags")])
我会添加这样的文件。
add_document(title = "meh, lol", tags = "python,C")
我是这样搜索的。它有一些不需要搜索的字段,所以我限制了要搜索的字段。
Query(query_string='meh').limit_fields(title)
我想要的是还通过一些标签过滤结果。例如,我有带有 python、C、Java 等标签的文档,我只希望返回带有标签“C”的文档。
我怎么做?
解决方案
终于找到了:D。
我基本上尝试使用 python 客户端执行纯 redis-cli 命令。不知道如何:/
但这有效。我可以在查询字符串中使用@ 。就像我们在 cli 中所做的那样。
Query("@title:meh @tags:{java}")
推荐阅读
- qt - 如何填充 QLineSeries 线和 X 轴之间的部分?
- javascript - 即使多个值发生变化,如何只调用一次观察组中的数据?
- android - 使用 mockito 在 android(kotlin) 中为交互者/演示者制作 junit 测试用例
- linux - 将 total_cov 放在突变类型和频率旁边以便于过滤
- c# - 如何删除 ListView C# 中的选定项目?
- java - 在 tomcat 上部署后的视频格式和 MIME 类型错误
- python - Python用反斜杠替换
- bokeh - 调试散景的提示
- excel - 根据单元格值插入行并向下填充
- java - 带有循环的 postDelayed 处理程序