【发布时间】:2015-10-08 14:36:23
【问题描述】:
我已阅读此内容,但找不到可以解决我的问题的内容。
我正在尝试显示带有缩略图的产品列表的表格。 表中的缩略图字段不返回 url,但返回一个损坏的图像链接仅适用于拥有缩略图的产品。
此产品列表使用 ListView,我可以在使用相同模板代码的产品的详细视图(DetailView)中很好地显示缩略图
我需要做什么才能在 ListView 中显示每个产品的缩略图...即。我必须如何更改我的查询集以将缩略图与产品一起传递到模板中?
查看
class ProductView(generic.ListView):
template_name = 'product/product.html'
context_object_name = 'product_list'
def get_queryset(self):
return Product.objects.all()
模板
{% for product in product_list %}
<tr>
<td><a href="/product/{{ product.id }}/">{{ product.title }}</a></td>
<td> {% if product.thumbnails.all %}
<img src="{{ product.thumbnail.url }}" alt="...">
{% endif %}
</td>
<td>{{ product.category }}</td>
<td>{{ product.subcategory }}</td>
<td>{{ product.status }}</td>
<td>{{ product.date_added }}</td>
{% endfor %}
型号
class ProductThumbnail(models.Model):
product = models.ForeignKey(Product, default=None, related_name='thumbnails')
thumbnail = models.ImageField(upload_to='thumbnails/',
verbose_name='thumbnail', blank=True,)
如果需要更多信息,请告诉我。
【问题讨论】:
-
如果产品有多个缩略图,您希望在表格中显示哪个缩略图?
-
每个产品只有一个缩略图
标签: django listview django-class-based-views