J'essaie de parcourir les propriétés dynamiques d'un Expando-Model afin de les afficher toutes. Est-il possible de faire cette autre que de créer votre propre méthode comme telle:Itération via les propriétés dynamiques d'Expando dans les modèles Django
class Event(db.Expando):
platform = db.ReferenceProperty(Platform)
date = db.DateTimeProperty()
def getValues(self):
return self._dynamic_properties
Et puis dans le modèle - qui est passé d'un objet « plate-forme »:
{% for event in platform.event_set %}
<b>{{ event.date }}</b><br />
{% for pair in event.getValues.items %}
{{ pair.0 }} = {{ pair.1 }}<br />
{% endfor %}
{% endfor %}
Cela fonctionne, mais je suis je ne peux pas suprised faire simplement:
{% for event in platform.event_set %}
<b>{{ event.date }}</b><br />
{% for pair in event.items %}
{{ pair.0 }} = {{ pair.1 }}<br />
{% endfor %}
{% endfor %}
Sans avoir mon propre appel de méthode ... dois-je utiliser autre chose que '.items'?
Est-ce que {% pour pair dans event._dynamic_properties.items%} ne fonctionne pas? –
Non; il y avait quelqu'un qui a suggéré cela, mais la réponse a été retirée. Il n'est pas possible d'accéder aux propriétés qui commencent par un trait de soulignement. Bravo pour la suggestion. – Wex