gpt4 book ai didi

python - 如何从 django-admin 面板获取所有项目?

转载 作者:太空宇宙 更新时间:2023-11-03 21:42:14 25 4
gpt4 key购买 nike

我有一个 html 页面,其中

<body>
<h8>
MY BLOGS
</h8>

<ul>
{% for bl in all_blogs %}
<li>{{bl.header}}</li>
{% endfor %}
</ul>

在“ul”中,它必须显示 all_blogs 中的所有项目是什么

def list_blogs(request):
all_blogs = Blog.objects.all
return render(request, 'blogs.html', {'blogs': all_blogs})

博客是

class Blog(models.Model):
header = models.CharField(max_length=100)
data = models.CharField(max_length=500)

def __str__(self):
return self.header

html 页面的输出只是“我的博客”,其中没有任何博客,在我的管理面板中我有 4 个博客,我尝试打印

for bl in all_blogs:
print(str(bl))

但是不行,我还检查了本地数据库中的博客,没有问题。

最佳答案

all() [Django-doc]是一个方法,而不是属性,因此您应该调用它来获取所有Blog对象的查询集,因此:

def list_blogs(request):
all_blogs = Blog.objects<b>.all()</b>
return render(request, 'blogs.html', {'blogs': all_blogs})

此外,在上下文中,您将查询集命名为 blogs不是 all_blogs(这是 View 中变量的名称,但是您将其作为 'blogs' 传递到上下文),因此您应该将 View 中的键更改为 'all_blogs',或者将模板中的变量更改为:

<ul>
{% for bl in <b>blogs</b> %}
<li>{{bl.header}}</li>
{% endfor %}
</ul>

关于python - 如何从 django-admin 面板获取所有项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52768655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com