Python Google App Engine:如何将搜索结果数据移动到我的模板中



我正在完成一个项目,我在谷歌应用引擎上使用python遇到了一个障碍。我有一个保留笔记条目的应用程序。我希望能够搜索这些条目,我正在使用此链接:

https://developers.google.com/appengine/docs/python/search/overview

我可以保存文档,搜索文档,删除文档等。 一切正常,但我看不到有关如何将搜索结果解析为模板的任何信息。

任何帮助将不胜感激。谢谢!

最简单的方法是使用实体键作为搜索文档的键。

doc = search.Document(doc_id=<entity_key_as_string>, fields=fields)

然后进行搜索查询并仅返回实体键:

options = search.QueryOptions(ids_only=True)
query   = search.Query(query_string=query_string, options=options)

然后从数据存储中获取实体并呈现模板。

除非我有误解,否则对于是否将数据存储实体与搜索文档相关联似乎是正交的(尽管这通常很有用)。不需要实体即可在模板中呈现文档信息。

您可以按以下行访问模板中的文档字段:

  {% for field in doc.fields %}
      {{field.name}}&nbsp;{{field.value}} <br/>
  {% endfor %}

或者使用 jinja2,获取一个特定的字段值,如下所示:

{{doc.field("yourfieldname").value}}

最新更新