如何在Google App Engine搜索API中的搜索文档中获取具有相同名称的多个字段的所有值?

时间:2014-06-14 17:56:49

标签: google-app-engine full-text-search

对于具有唯一名称的字段,您可以执行doc.field('prop').value,但是当您尝试使用名称多次出现的字段执行此操作时,您将获得

ValueError: Must have exactly one field with name prop, but found 3.

我查看了Document类的源代码,但是找不到返回与给定名称字段关联的值列表的方法。有没有办法做到这一点?

要清楚,我正在尝试使用Document而不是ScoredDocument。

1 个答案:

答案 0 :(得分:2)

查看源代码时,我忽略了以下划线开头的所有方法,因为大多数方法都是私有的,或者像__eq__这样的方法。我显然不应该这样做,因为文档类实现了__get__,所以如果文档有多个名为'prop'的字段,你可以执行以下操作来获取它的所有值:

values = [field.value for field in doc['prop']]