【发布时间】:2011-03-24 06:51:51
【问题描述】:
我正在尝试遍历 Expando-Model 的动态属性,以便将它们全部输出。除了创建自己的方法之外,还有其他方法吗:
class Event(db.Expando):
platform = db.ReferenceProperty(Platform)
date = db.DateTimeProperty()
def getValues(self):
return self._dynamic_properties
然后在模板中 - 传递一个“平台”对象:
{% for event in platform.event_set %}
<b>{{ event.date }}</b><br />
{% for pair in event.getValues.items %}
{{ pair.0 }} = {{ pair.1 }}<br />
{% endfor %}
{% endfor %}
这行得通,但我很惊讶我不能这样做:
{% for event in platform.event_set %}
<b>{{ event.date }}</b><br />
{% for pair in event.items %}
{{ pair.0 }} = {{ pair.1 }}<br />
{% endfor %}
{% endfor %}
没有我自己的方法调用...我应该使用“.items”以外的东西吗?
【问题讨论】:
-
是否 {% for pair in event._dynamic_properties.items %} 不起作用?
-
否;有人提出这个建议,但答案已被撤回。无法访问以下划线开头的属性。为建议干杯。
标签: python google-app-engine templates iteration expando