gpt4 book ai didi

ruby - Ruby 的 Liquid 模板引擎中的模数(或缺少模数)

转载 作者:数据小太阳 更新时间:2023-10-29 06:29:37 24 4
gpt4 key购买 nike

我正在 Jekyll 网站上工作,并试图输出嵌套在一行 div 中的三列 div。 Liquid他们的 cycle 使这变得非常容易过滤器:

{% for p in site.categories.post %}
{% cycle 'add rows': '<div class="row">', nil, nil %}
<div class="column">
<a href="{{ p.url }}">{{ p.title }}</a>
</div>
{% cycle 'close rows': nil, nil, '</div>' %}
{% endfor %}

但是,这仅在有 3、6、9 等帖子时才有效。当帖子总数不是三的倍数时,<div class="row">永远不会关闭——for 循环在结束标记可以作为 close rows 的一部分输出之前结束循环。

在 Ruby、PHP 或任何其他语言中,我可以使用模数运算符轻松解决此问题,因此除了 close rows 之外循环我会输出 </div>什么时候if site.categories.size % 3 == 0 .但是,由于 Liquid 是一种安全的模板语言,因此它不支持模数。

我还能做些什么来正确关闭 <div class="row">当帖子总数不是三的倍数时?

最佳答案

我发现这种工作方式很棒!

{% assign mod = forloop.index0 | modulo:4 %}
{% if mod == 0 %}
<!-- Do stuff -->
{% endif %}

关于ruby - Ruby 的 Liquid 模板引擎中的模数(或缺少模数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2245972/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com