从模型中获取项目列表

时间:2010-08-27 11:25:41

标签: django django-models

我有这个班级

class Category(models.Model):
    title = models.CharField(max_length=60)
    created = models.DateTimeField()

def __unicode__(self):
    return self.title

class Meta:
    verbose_name_plural = "Categories"

我可以使用views.py中的Category.objects.all()访问其项目。 我想在我的模板中访问这些项目,但显然这不起作用:

{% for category in Category.objects.all() %}
    {{ category }}
{% endfor %}

如何解决在模板中获取项目的问题?

1 个答案:

答案 0 :(得分:2)

我强烈建议从视图中明确传入Category.objects.all()。无论您如何过滤类别,都可以重复使用该模板。

def my_view(request, *args, **kwargs):
    all_categories = Category.objects.all()
    ...

{% for category in all_categories %}

如果您不愿意这样做,请将Category作为模板变量传递,然后在()结尾处丢失all

def my_view(request, *args, **kwargs):
    model_variable = Category
    ...

{% for category in model_variable.objects.all %}