使用 "in range(len()%4) 在 django 中循环

Posted

技术标签:

【中文标题】使用 "in range(len()%4) 在 django 中循环【英文标题】:looping in django using "in range(len()%4) 【发布时间】:2016-01-26 21:01:25 【问题描述】:

我正在尝试使用range 和模数循环Django 模板。这是我的代码:

% for iterate in range(len(items)%4) %
    <div class="row">
        % for item in items %
            <div class="col-sm-3" style="background-color:lavender;">
              <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
              <p> Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
            </div>
        % endfor %
    </div>
% endfor %

但我得到了这个错误

无法解析余数:'(len(items)%4)' from 'range(len(items)%4)'

【问题讨论】:

【参考方案1】:

Django 的模板中不允许使用复杂的函数,您需要在 python 视图中创建范围对象,并将其作为变量传递给模板。

See the Django docs for explanation

由于 Django 有意限制模板语言中可用的逻辑处理量,因此无法将参数传递给从模板中访问的方法调用。数据应该在视图中计算,然后传递给模板进行显示。

【讨论】:

啊好吧。非常感谢。

以上是关于使用 "in range(len()%4) 在 django 中循环的主要内容,如果未能解决你的问题,请参考以下文章

if a in range(len(lst)): print(a,lst[a]) #获取索引和对应元素, 背下来~~

比较 2 个列表而不使用“in”

range()

SAP FBN1 Number Range In Financial Accounting & Table Name NRIV, OBJ RF_BELEG

python脚本

Python 元组解构 All In One