You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django模板如何在postgallery为空时隐藏图片画廊标题

你之前的写法失效有两个核心原因:

  1. 变量名不匹配:你模板中遍历的是postgallery,但判断时用了imagegallery,拼写不一致导致判断永远不生效
  2. 判断逻辑错误:不能直接将列表类的可迭代对象和数字0做相等判断,模板引擎中直接对可迭代对象做if判断即可识别是否为空。

解决方案

将整个画廊的标题和容器代码全部包裹在非空判断内即可,只有当postgallery存在至少一条内容时才会渲染整段代码,修改后的模板代码如下:

{% if postgallery %}
<a>Image Gallery</a>
<div class="row">
    {% for images in postgallery %}
    <div class="col-md-3">
        <a href="{{ images.images.url }}" data-lightbox="image-1">
            <img class="img-thumbnail" src="{{ images.images.url }}" />
        </a>
    </div>
    {% endfor %}
</div>
{% endif %}

如果需要在无图片时展示提示,可以补充else分支:

{% if postgallery %}
<a>Image Gallery</a>
<div class="row">
    {% for images in postgallery %}
    <div class="col-md-3">
        <a href="{{ images.images.url }}" data-lightbox="image-1">
            <img class="img-thumbnail" src="{{ images.images.url }}" />
        </a>
    </div>
    {% endfor %}
</div>
{% else %}
<p>暂无上传的图片</p>
{% endif %}

内容的提问来源于stack exchange,提问作者Wazy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 00:00:04