谷歌应用引擎数据存储搜索

2024-05-17 03:21:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有任何方法可以在数据存储中搜索条目。我有一堆歌曲条目(标题,艺术家,评级),但我不确定如何真正地搜索歌曲标题和艺术家。我们接受了一个搜索词,并正在寻找所有“匹配”的条目。但是我们失败了:(任何帮助都是非常感谢的!在

  • 我们使用的是python

目前的代码是无用的,这是一个精确的搜索,但可能会帮助你看到问题

   query = song.gql("SELECT * FROM song WHERE title = searchTerm  OR  artist = searchTerm")

Tags: 数据方法代码from标题songtitle条目
1条回答
网友
1楼 · 发布于 2024-05-17 03:21:18
网友
2楼 · 发布于 2024-05-17 03:21:18

您处理的歌曲数据作为一个相当静态的数据集(主要是插入,没有或很少更新)。在这种情况下,有一种称为关系索引实体(RIE)的GAE技术是实现基于关键字的搜索的有效方法。在

但需要做一些准备工作,简要地说:

  • 构建一个特殊的RIE实体,在这里你可以放置所有可搜索的关键字 从每首歌(一对一的关系)。在
  • RIE将它们存储在StringListProperty中,它支持如下搜索: keywords = 'SearchTerm' (如果列表keywords中的任何值与“SearchTerm”匹配,则返回True)
  • 通过添加上述多个过滤器,条件立即生效
  • 或条件需要更多的工作来实现内存中的merge from和only查询

您可以在我的博客Relation Index Entities with Python for Google Datastore中找到有关解决方案工作流和代码示例的详细信息。在

相关问题 更多 >