带有 if、with、for 和 math-add 用法的 Django 模板操作
Posted
技术标签:
【中文标题】带有 if、with、for 和 math-add 用法的 Django 模板操作【英文标题】:Django template operations with if, with, for and math-add usage 【发布时间】:2019-03-15 10:12:37 【问题描述】:我正在尝试在 django 模板中形成一个表格。一排是白色的,另一排是灰色的……它会这样继续下去。因此表格行将显示 1 个白色行,1 个灰色行。所以它会更具可读性。我试图设置一个整数变量来决定在哪个条件下该行将是什么颜色。颜色在 class="tr1" 和 class="tr2" css 类中确定。但它始终设置为 class="tr1"。因此,如果条件有效,则始终为第一。解决不了。
% with 0 as num %
% for note in notes %
% if num == 0 %
<tr class="tr1">
<td class="td_size1">note.teacher__name</td>
<td class="td_size1">note.attendance</td>
<td class="td_size1">note.time</td>
<td class="td_size1">note.dailynote</td>
</tr>
num|add:1
% endif %
% if num == 1 %
<tr class="tr2">
<td class="td_size1">note.teacher__name</td>
<td class="td_size1">note.attendance</td>
<td class="td_size1">note.time</td>
<td class="td_size1">note.dailynote</td>
</tr>
num|add:-1
% endif %
% endfor %
% endwith %
【问题讨论】:
【参考方案1】:我通过使用 css 解决了这个问题。还有一个 javascript 解决方案,但如果禁用 javascript,它就不起作用。在 css 中,它检查它是奇数还是偶数。如果是奇数则给出第一种颜色,如果是偶数则给出第二种颜色。
table.custom1
font-family: arial, sans-serif !IMPORTANT;
border-collapse: collapse !IMPORTANT;
width: 100% !IMPORTANT;
td.custom1, th.custom1
border: 1px solid #511327 !IMPORTANT;
text-align: left !IMPORTANT;
padding: 4px !IMPORTANT;
tr.custom1:nth-child(even)
background-color: #701b36 !IMPORTANT;
tr.custom1:nth-child(odd)
background-color: #5e172e !IMPORTANT;
【讨论】:
以上是关于带有 if、with、for 和 math-add 用法的 Django 模板操作的主要内容,如果未能解决你的问题,请参考以下文章
尝试catch with contains for和if语句Java [关闭]
python,中使用while...else 和 for...else 还有try...else,另外就是运用with关键字
带有 FOR 和 IF EXIST 和 GOTO 问题的 Windows 批处理
论文笔记:Learning with Noisy Labels for Sentence-level Sentiment Classification