液体语法错误:“排序”期间出现意外字符

时间:2019-05-30 02:54:31

标签: ruby jekyll liquid

我有一段代码针对这种结构执行某种排序:

items:
 0:
  date: '2018-01-02'
 1:
  date: '2019-02-02'
 2: 
  date: '2016-03-04'

排序:

{% assign sorted = items.sort {|x,y| y[1].date <=> x[1].date} %}

基于:https://stackoverflow.com/a/5710429/2797942

当我运行jekyll serve时,它会返回Liquid Warning: Liquid syntax error (line 18): Unexpected character { in "{{items.sort {|x,y| y[1].date <=> x[1].date} }}

我是Ruby和Jekyll的新手,有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

Jekyll模板不能接受完整的Ruby。您可以输出上下文变量,可以选择通过Liquid过滤器进行修改;调用sort方法并传递Ruby块是不可能的。请尝试:

{{ items | sort: "date" | reverse }}