【问题标题】:Multiple field names in appengine searchappengine 搜索中的多个字段名称
【发布时间】:2013-06-11 15:04:21
【问题描述】:

Appengine 搜索服务中是否可以有多个同名字段?

我为什么需要这个? 例如,如果文档是报纸页面并且包含单个新闻,我将创建字段故事、标题、作者。 它会很好用,我可以查询标题为:“something”,作者:“something else”的文档,但是当您在同一页面上有多个故事时怎么办?多个标题?

如果我创建名称为“title1”、“title2”的字段......我无法使用查询进行搜索 标题:“某事”

如果我将所有标题放在同一个“标题”中,当我搜索标题时,我会得到混合结果

如果这是一个愚蠢的想法,或者如果这是不可能的,有人可以推荐一个更好的方法来解决这个问题吗?

【问题讨论】:

    标签: python google-app-engine search


    【解决方案1】:

    添加另一个对故事进行分组的字段。

    基本上你会为每个故事创建一个搜索文档,例如:

    title, author, news_id
    hi   ,    max,       1
    hello,    max,       1
    world,     me,       1
    sup  ,     me,       2
    

    然后您在新闻页面 1 中查询 hi hello world 故事并希望作者最多。 查询:作者:max 和 news_id:1 标题查询: 标题:你好

    所以你需要更多地破坏你的搜索文档来做你想做的事。

    【讨论】:

    • 你能再具体一点吗?
    • 哦抱歉没有注意到这一点。基本上,您为每个故事创建新行,然后 news_id 将成为您要查询的组:news_id:100 和标题:hello
    • 没有分组依据,所以我无法在同一页面上搜索多个标题,还是我错了?
    • 有了你的回答,我无法在不知道 news_id 的情况下进行搜索,如果我不知道 news_id,我将无法搜索 title:something sup:something on the same news
    • 在您的问题中,文档是新闻页面。因此,无论您将使用什么 id,都将是您的 news_id,这意味着您在查询故事之前确实知道新闻的 id。对于一般搜索,您可以跳过新闻 ID。
    猜你喜欢
    • 2018-08-08
    • 2017-02-28
    • 1970-01-01
    • 1970-01-01
    • 2016-02-13
    • 1970-01-01
    • 1970-01-01
    • 2016-11-17
    • 1970-01-01
    相关资源
    最近更新 更多