Ошибка «ожидаемая конечная_строка, но обнаружен двоеточие» при формировании цепочки фильтров - PullRequest
0 голосов
/ 17 апреля 2019

Я только что попытался повысить мою версию Jekyll со 3.4.3 до 3.8.5, и когда я запускаю сборку, я получаю эту ошибку:

 Liquid Warning: Liquid syntax error (line 37): Expected end_of_string but found colon in "{{site.documents | where: "belongs_to_group", page.group | where: "lang": lang | sort: "page.date" | reverse }}"

Что изменилось в цепочках where фильтров? Кажется, я ничего не могу найти в документации.

Когда я включаю только один where фильтр, переменная назначается правильно.

{% assign boxes = site.documents | where: "belongs_to_group", page.group %}

Как только я добавляю еще одну, я получаю указанную ошибку.

Вот полный пример того, как мне удалось назначить veraiable в предыдущей версии Jekyll.

{% assign boxes = site.documents | where: "belongs_to_group", page.group | where: "lang": lang | where_exp: "item", "item.start_datetime > site.time" | sort: "start_datetime" %}

Как я могу добавить эти фильтры в новую версию Jekyll?

1 Ответ

2 голосов
/ 17 апреля 2019

Похоже, что проблема здесь может быть в следующем фрагменте:

where: "lang": lang

Ключ и значение должны быть разделены запятой ( Jekyll docs ).

where: "lang", lang

Ваше другое предложение where отформатировано правильно, поэтому оно не выдает ошибку, если вы включаете только это.

...