Как динамически назначать переменную _data? - PullRequest
0 голосов
/ 22 ноября 2018

Я использую staticman для включения комментариев в своем блоге.Он помещает комментарии в папку _data.Моя структура папок выглядит следующим образом:

_data/
    comments/
        blog-post-1/
            entry1542891129928.yml
            ...
        blog-post-2/
            entry1542891129928.yml
            ...
        ...

В моем _layouts/post.html я хочу получить доступ к комментариям для определенного блога.Это код, который я ожидаю работать, чтобы получить комментарии:

{% assign comments = site.data.comments[page.slug] | sort %}

Но когда я запускаю сборку, я получаю следующую ошибку:

Liquid Exception: Liquid error (line 39): Cannot sort a null object. in /_layouts/post.html

Кажется, что-тоделать с page.slug, потому что, если я заменю его строкой 'blog-post-1', это сработает.

Как динамически получить слаг поста в post.html?

1 Ответ

0 голосов
/ 22 ноября 2018

Решена проблема!

Проблема в том, что папка не существует.Я обошел это, переместив фильтр сортировки:

{% assign comments = site.data.comments[page.slug] %}
{% if comments %}
    {% assign comments = comments | sort %}
    ...do things...
{% endif %}

Теперь сборка не завершается.

...