如何在Django模板中将空状态提示段落移出ul列表?
解决方法
你可以通过外部条件判断替代循环内的{% empty %}分支,把空状态提示完全移出<ul>列表,具体修改后的代码如下:
{% extends "todo_lists/base.html" %} {% block content %} <h2>Deeds of a {{list_title}} list</h2> {% if deeds %} <ul> {% for deed in deeds %} <li>{{deed.title}}</li> {% endfor %} </ul> {% else %} <p>No deeds here yet</p> {% endif %} {% endblock content %}
改动说明:
- 用
{% if deeds %}判断待办事项列表是否有内容:- 当列表非空时,正常渲染
<ul>和内部的<li>项 - 当列表为空时,直接渲染独立的空状态提示段落,完全脱离
<ul>的结构范围
- 当列表非空时,正常渲染
- 这种写法既符合逻辑上的模块划分,也能避免原来空提示被包裹在列表内带来的多余外边距问题
内容的提问来源于stack exchange,提问作者user19712456
相关产品推荐
相关产品推荐

