我試圖遍歷Expando模型的動態屬性以便輸出它們全部。難道還有比創建自己的方法,像這樣這樣做其他的方式:在Django模板中迭代Expando的動態屬性
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'以外的東西嗎?
{event for event._dynamic_properties.items%}中的對不起作用嗎? – 2010-08-02 18:09:13
否;有人提出這個建議,但答案已被撤回。無法訪問以下劃線開頭的屬性。歡呼的建議。 – Wex 2010-08-03 10:26:19