【发布时间】:2011-02-13 11:58:22
【问题描述】:
我总是在试图找出可在模板中使用的变量名称时遇到问题。我想知道 shell 中是否有什么东西可以打印出所有可用的对象。
假设您有两个模型:
class Foo1(models.Model)
id = models.Integer(primary_key=True)
foo2 = models.ForeignKey(Foo2)
class Foo2(models.Model)
id = models.Integer(primary_key=True)
foo3 = models.Integer()
在 shell 中我执行p = Foo1.objects.all() 所以现在p 是一个包含Foo1 和Foo2 中所有值的查询集(由于关系)。
现在在我的模板中,为了提取所有这些数据,我通常会这样做:
{% for i in p %}
<p>{{ i.id }}</p>
<p>{{ i.foo2.id }}</p>
<p>{{ i.foo2.foo3 }}</p>
{% endfor %}
现在我只是猜测要使用的变量语法是i.id、i.foo2.id 和i.foo2.foo3,但是对于更复杂的 QuerySet,这并不总是那么简单。有没有办法输出 QuerySet 的所有可用变量及其名称?
【问题讨论】:
标签: python django django-templates