首页 > 解决方案 > 为什么我不能在不使用 forloop 的情况下从模型中检索数据

问题描述

如果我有不同的方法,我不应该使用 for 循环吗?避免大o(n)?这就是我所拥有的。

模型.py

class Drama(models.Model):
    name = models.CharField(max_length=255)

视图.py

def index(request):
    theOffice = Drama.objects.filter(name='The Office')
    return render(request, 'index.html', {
        'theOffice':theOffice,
                })

现在在模板中

{{ theOffice.name }}

上面没有显示,真正困扰我的是如果我使用 for 循环它可以工作,

{% for theOffi in theOffice %}
{{ theOffi.name }}
{% endfor %}

但是,使用过滤器有什么意义?我可以获取 objects.all() 并使用

 {% if drama.name == "the office %}

我错过了什么吗?我真的很困惑

标签: pythondjango

解决方案


过滤器返回一个数组。If you use Drama.objects.filter(name='The Office')[0]您的代码将起作用


推荐阅读