如何在jinja2模板中打印App Engine Search API文档中的特定字段?

时间:2013-05-14 05:17:57

标签: google-app-engine python-2.7 jinja2

我正在使用Google App Engine Search API(在Python中),我希望能够在我的jinja2模板中打印特定的search_document字段。我在模板中使用这种表示法来尝试打印搜索文档的“注释”字段:

{{ scored_document.comment }}

我想要这个输出:

test

但我获得了这个输出:

[search.TextField(name=u'comment', value=u'test')]

获取“评论”的的正确语法是什么?

API documentation似乎表示你只能通过.fields成员(列表对象)获得此值,但这种表示法似乎也不起作用:

{{ scored_document.fields.comment }}

我只是在github上扩展Google提供的搜索API示例:

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link rel="stylesheet" type="text/css" href="/static/css/main.css"/>
    <title>Search Demonstration App</title>
  </head>
  <body style="margin:20px;">

    <form action="/sign" method="post">
      <div>Search Demo</div>
      <div><textarea name="search" rows="1" cols="60"></textarea></div>
      <div><input type="submit" value="Search"/></div>
      <div><textarea name="content" rows="3" cols="60"></textarea></div>
      <div><input type="submit" value="Comment"/></div>
    </form>

    {{number_returned}} of {{results.number_found}} comments found <p>
    {% for scored_document in results %}

      <!-- Just want **value** of comment here: -->
      {{ scored_document.comment }}

      <p>
    {% endfor %}

    <a href="{{ url }}">{{ url_linktext }}</a>

  </body>
</html>

1 个答案:

答案 0 :(得分:1)

您需要该字段的'value'属性:

{{ scored_document.comment.value }}