html模板 循环里if,django模板里循环变量<table>里想要两个一行如何控制

2016-8-3 周三

做项目时遇到的问题:

每个div由循环变量输出:

{% for key,value in formextenddetail %}

{{ key }}

{{ value }}

{% endfor %}

但是我想两个div一行,使用

...

这种样子

因为我负责的是前端,views这些不是很熟悉,想在template里直接控制,搜一下发现居然还不用直接用乘除或者mod计算,囧。

参考文章:http://blog.csdn.net/rain_qingtian/article/details/41076151

容易知道,Django模版加法:

{{ value|add:10}}

value=5,则返回15 Django模版减法:

{{value|add:-10}}

value=5,则返回-5,这个比较好理解,减法就是加一个负数 Django模版乘法:

{% widthratio5 1 100 %}

上面的代码表示:5/1 *100,返回500,widthratio需要三个参数,它会使用 参数1/参数2*参数3,所以要进行乘法的话,就将参数2=1即可 Django模版除法

{% widthratio5 100 1 %}

上面的代码表示:5/100*1,返回0.05,只需要将第三个参数设置为1即可。

但是这些方法用在除余很麻烦。

解决方案:divisibleby标签!

用django的divisibleby标签实现,如下:

{% for each in somelist %}

{% if forloop.counter|divisibleby:2 %}

{% else %}

{% endif %}

{% endfor %}

divisibleby标签的意义是用后面的参数去除,除尽为True,否则为False。

所以,我的代码改为:

{% for key,value in formextenddetail %}

{% if forloop.counter|divisibleby:'2' %}

{{ key }}

{{ value }}

{% else %}

{{ key }}

{{ value }}

{% endif %}

{% endfor %}

这个解决方案同样可以用在换行变样式的情况等!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值