gpt4 book ai didi

python - django - 'ModelName' 对象不可迭代

转载 作者:太空宇宙 更新时间:2023-11-04 09:33:08 25 4
gpt4 key购买 nike

我有一个名为 TemplateImages 的模型类,它保存对我媒体文件夹中图像的引用。

我想在 html 文件中循环显示图像。

这是我的 models.py 代码:

class TemplateImages(models.Model):
image = models.ImageField(upload_to='template_images') # template_images/en/chronological/en-chronological-resume-1.png.
type = models.CharField(max_length=40) # e.g. chronological, functional, combination, coverletter
language_code = models.CharField(max_length=7, choices=languages.LANGUAGE_CHOICES, default='en') # en.

def __str__(self):
return '{}'.format(self.image)

这是我的 views.py 代码:

def templates(request):
...
language_pref = request.user.userprofile.language_preference
chronological_images = core_models.TemplateImages('chronological', 'en')
...
return render(request, 'templates/templates.html', {
...
'chronological_images': chronological_images,
...
})

这是我的数据库的屏幕截图:

enter image description here

在我的 html 页面上,我放置了以下 django for 循环以在页面上显示 25 个图像:

 {% for c_image in chronological_images %}
{{c_image.image|file_url|safe}}"
{% endfor %}

我收到以下错误消息:

'TemplateImage' object is not iterable

我已经搜索过谷歌,但找不到任何有用的示例。

谁能解释一下我做错了什么?

最佳答案

您只是构造了一个 TemplateImages 对象,而不是运行查询。试试这个:

chronological_images = TemplateImages.objects.filter(
type='chronological',
language_code='en',
)

关于python - django - 'ModelName' 对象不可迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54874167/

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