使用jinja2进行G +集成列表活动

时间:2014-10-20 17:58:54

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

我正在尝试在传统的HTML(应用引擎应用)中表示G +活动列表。我打电话给G +服务。我收到了这个系列。然后我使用Jinja2发送此变量。最后,当我试图迭代HTML时,我遇到了问题。

main.py

   actividades = servicio.activities().list(userId='me', collection='public', maxResults='2').execute(http=http)

   plantilla_values = {
      'actividades': actividades,
   }

   template = Entorno_Jinja.get_template('index.html')
   self.response.write(template.render(plantilla_values))

index.html(使用jinja2)

    {% for a in actividades%}
      <li>{{a}}</li>
    {% endfor %}

“actividades”变量值:

{u'updated': u'2014-10-20T16:55:25.402Z', u'kind': u'plus#activityFeed', u'nextPageToken': u'Cg0Qq5bbpOO7wQIgACgBEhQIABCQ95Om2bvBAhjo-LTftLHBAhgC', u'title': u'Google+ List of Activities for Collection PUBLIC', u'etag': u'"Vea_b94Y77GDGgRK7gFNPnolKQw/TIMAz5AmENqGsq38jyfD5oSPWAs"', u'items': [{u'updated': u'2014-10-20T16:55:25.402Z', u'kind': u'plus#activity', u'actor': {u'image': {u'url': u'https://....

活动架构:

{
  "kind": "plus#activityFeed",
  "etag": etag,
  "nextPageToken": string,
  "selfLink": string,
  "nextLink": string,
  "title": string,
  "updated": datetime,
  "id": string,
  "items": [
    activities Resource
  ]
}

目标是代表“项目”信息。所以是for for other for。

2 个答案:

答案 0 :(得分:1)

“actividades”被截断,但它应该像

{% for a in actividades.items %} <li>{{a.insert_correct_key_or_property_name_here}}</li> {% endfor %}

答案 1 :(得分:0)

功能代码是这样的(类似于Monte Bel注释,但使用&#34; []&#34;来表示集合或属性): 在这种情况下,你可以迭代到项目并显示每个活动标题。

{% for a in actividades['items'] %}
<li>{{a['title']}}</li>
{% endfor %}

谢谢!