我有一个零售网站,销售多个品牌。每个品牌在其自己的页面上都有其徽标。徽标图像具有其自身的模型。
如何在索引页上为不同的型号使用相同的徽标?我想在边栏中突出显示一些商店优惠券时使用相同的徽标。
当前,我在IMG模型中有一个到商店的外键。
当前代码:
models.py
class Logo(models.Model):
store = models.ForeignKey(Store, on_delete=models.CASCADE,
related_name="storelogo")
image = models.ImageField(upload_to=get_image_path)
views.py
def show_store(request, slug):
store = Store.objects.get(slug=slug)
uploads = store.storelogo.all()
return render(request, 'store.html', {
'store': store,
'products': products,
'coupons': coupons,
'uploads': uploads,
})
HTML
<div class="store-logo">
{% for logo in store.storelogo.all %}
<img src="{{ logo.image.url }}">
{% endfor %}
</div>
徽标在商店页面上显示得很好,但是我无法在索引页面的For循环中显示它。有可能吗?
我可以添加另一个图像模型,并为优惠券添加完全相同的徽标图像,但这似乎完全违背了DRY原则。我可以在索引页面上使用模板标签吗?还是最好创建另一个模型?
让我知道是否遗漏了任何内容。谢谢!