can';t从模板python django访问图像url

can';t从模板python django访问图像url,python,django,django-models,django-orm,html-templates,Python,Django,Django Models,Django Orm,Html Templates,这是views.py中的代码 def store (request): products = { 'products':product.objects.all() } return render (request, 'neizer/products.html', context = products) 这是模板 {% block content %} <div class="products-parent"> {%for produc

这是views.py中的代码

def store (request):

    products = {
       'products':product.objects.all()
    }

    return render (request, 'neizer/products.html', context = products)
这是模板

{% block content %}

<div class="products-parent">
  {%for product in products%}
  <div class="product-child">
    <img src={{product.image.url}} alt="no image available" />
    <h2>{{product.name}}</h2>
    <button id="learn-more-btn">learn more</button>
    <p>${{product.price}} <i class="fas fa-cart-plus"></i></p>
  </div>

  {% endfor %}
</div>
{% endblock content %}

发生此错误是因为并非所有记录都关联了图像文件。 此错误的最简单解决方案是检查是否存在关联图像:

{% if person.image %}
    <img src={{product.image.url}} />
{% else %}
    <img src="#" alt="no image available" />
{% endif %}
或者至少在模板中放置一个默认图像:

...
{% else %}
    <img src="{% static 'your_default_img_path' %}" >
...

发生此错误是因为并非所有记录都关联了图像文件。 此错误的最简单解决方案是检查是否存在关联图像:

{% if person.image %}
    <img src={{product.image.url}} />
{% else %}
    <img src="#" alt="no image available" />
{% endif %}
或者至少在模板中放置一个默认图像:

...
{% else %}
    <img src="{% static 'your_default_img_path' %}" >
...

您实际遇到了什么错误?值错误,“image”属性没有与之关联的文件。这是否回答了您的问题?您在哪里看到这个错误?你能粘贴整个错误跟踪吗?请粘贴整个错误跟踪。将其粘贴到问题中。您实际遇到了什么错误?值错误,“image”属性没有与之关联的文件。这是否回答了您的问题?您在哪里看到这个错误?你能粘贴整个错误跟踪吗?请粘贴整个错误跟踪。粘贴到问题中。现在应该修复错误,但我不能使用默认图像,它应该是产品的图片。当我尝试在django shell中访问它时,我会得到一个关联的图像url,因此显然有一个与产品实例
product.objects.all()关联的图像
表示您正在尝试显示所有现有记录-您确定所有记录都设置了图像吗?但即使没有图像,也不会出现错误,模板只会呈现一个空字符串。让我们尝试一些非常简单的操作-
Product.objects.filter(image\u-exact='').count()
你能检查这个返回值是否大于零吗?现在应该可以修复错误,但我不能使用默认图像,它应该是一个产品的图片我在django shell中尝试访问它时得到一个关联的图像url,因此显然有一个与产品实例
product.objects.all()关联的图像
表示您正在尝试显示所有现有记录-您确定所有记录都设置了图像吗?但即使没有图像,也不会出现错误,模板只会呈现一个空字符串。让我们尝试一些非常简单的操作-
Product.objects.filter(image\u-exact='').count()
您是否可以检查此返回值是否大于零?
@property
def get_image_url(self):
    if self.image and hasattr(self.image, 'url'):
        return self.image.url
    else:
        return "/static/images/your_default_image.jpg"