我正在尝试找到一种方法来轻松遍历Google App Engine(Python)模型并打印出每个属性和属性名称。
这就是我正在尝试的方式,经过一些研究后,我意识到我不能相互接下来的变量。有没有办法用过滤器或返回模型属性的所有值的方法?
由于
templateargs = {'properties':MyModel.properties(), 'user1':MyModelObj, 'user2':MyModelObj}
{% for property in properties %}
Property: {{property}}
User1: {{user1.{{property}}}}
User2: {{user2.{{property}}}}
{% endfor %}
答案 0 :(得分:2)
看看this to_json
method如何抓取Model实例上的所有属性值,它应该指向正确的方向。
答案 1 :(得分:1)
尝试:
vars(user1)[property]
有关vars
如何返回实例变量字典的简短说明,请参阅http://docs.python.org/library/functions.html#vars。
答案 2 :(得分:1)
经过一些研究后,我意识到正确的方法是使用gettattr。我使用过滤器:
@register.filter
def mygetattr(obj, name):
return getattr(obj, name)
根据建议here