在 Django 模板中获取 GAE 类 collection_name 的计数
Posted
技术标签:
【中文标题】在 Django 模板中获取 GAE 类 collection_name 的计数【英文标题】:Get count of GAE class collection_name in Django Template 【发布时间】:2012-08-29 17:56:36 【问题描述】:我正在使用带有 python 2.7 和 Django 模板的 Google App Engine。
我的对象模型是这样设置的:
Class parent(db.Model):
parentName = db.StringProperty()
Class child(db.Mode):
childName = db.StringProperty()
parent = db.ReferenceProperty(parent, collection_name='children')
我的 python 代码将所有父级传递给模板
qry_parents = parent.all()
parents = qry_parents.fetch(30)
template_values = 'parents':parents
self.response.out.write(template.render(path, template_values))
现在,我正在尝试做但似乎无法弄清楚的是如何从父对象中的隐含集合“孩子”中显示孩子的数量。这是我的 template.html 的示例
<html>
<body>
<table>
% for p in parents %
<tr>
<td> p.parentName </td>
<td> p.children.items|length </td> <!-- always zero! -->
</tr>
% endfor %
</table>
</body>
</html>
我似乎无法引用正确的方法来计算孩子的数量。我觉得我很接近了,因为我得到了零,而不是 None 或 null。有人可以指出我正确的方向吗?非常感谢!
【问题讨论】:
【参考方案1】:您不需要items
。 children
已经是 db.Query
对象。不过,你最好还是使用p.children.count
。
【讨论】:
非常感谢。我想多了!以上是关于在 Django 模板中获取 GAE 类 collection_name 的计数的主要内容,如果未能解决你的问题,请参考以下文章