0

我正在使用带有 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。有人可以指出我正确的方向吗?非常感谢!

4

1 回答 1

0

你不需要itemschildren已经是一个db.Query对象了。你最好还是这样做p.children.count

于 2012-09-05T08:48:44.223 回答