首页 > 解决方案 > 在 Jekyll 中按“最后一个”排序不起作用?反向排序等

问题描述

我在 3.8.4 版上。假设我创建了一个要以相反顺序打印的数组:

{% assign words = 'swag, yolo, hi' | split: ", " | sort: 'last' %}

{% for word in words %}

    <p>{{word}}</p>

{% endfor %}

即使使用sort: 'last',这将打印为:

swag
yolo
hi

也许是'first'。输出还是

swag
yolo
hi

'first'.

我一直试图在 Jekyll 中按一些页面前页内容对集合进行排序,并且sort有效 - 它按顺序列出所有内容,按我给它们的数字(不是按标题或日期),从头到尾,但是如果我想要最后到第一个?如果 I sort: 'last',它仍然是从头到尾排序的。last选项坏了吗?难道我做错了什么?

这是截图:https ://i.imgur.com/7Fxep9A.png

标签: sortingjekyllliquid

解决方案


文档中看起来sort总是以一种方式。您传递给它的参数是要排序的属性的名称。您的对象没有名为“first”或“last”的属性,因此它被忽略了。

要得到你想要的,只需使用sortaz 排序,然后reverse反转排序列表 (za): {% assign words = 'swag, yolo, hi' | split: ", " | sort | reverse %}


推荐阅读