在 Django 博客主页上显示图像 URL

Displaying image URL on Django Blog Home Page

我无法在着陆页上加载我的博客图片。请任何人可以解决这个问题。

我的 HTML 循环内的代码:

{% for item in object_list %}


<img class="rounded" src="{{item.main_image.url}}">

报错 'main_image' 属性没有与之关联的文件。

我可以通过简单地执行以下操作来加载详细信息页面中的图像:

src="{{object.main_image.url}}">

我的模特:

class Item(models.Model):
    title = models.CharField(max_length=100)
    description= RichTextField(blank=True, null=True)
    main_image= models.ImageField(null=True, blank=True,upload_to='images/')
    date = models.DateTimeField(auto_now_add=True)
    item_slug = models.CharField(max_length=200, default=1)
    item_category = models.ForeignKey(Categories, default=1, on_delete=SET_DEFAULT)

因为您的图像是可选的,所以您需要在尝试访问之前检查图像是否存在,因为虽然它不存在,但它没有 URL。

为此,请在您的模板中访问它之前进行检查;

{% if item.main_image %}
    <img class="rounded" src="{{ item.main_image.url }}">
{% else %}
    <p>No image</p>
{% endif %}