Сортировка в Jekyll / жидком коде по двум столбцам - PullRequest
0 голосов
/ 06 августа 2020

В моем коде я пытаюсь прочитать около 100 файлов yml и создать таблицу html. Проблема, с которой я столкнулся, заключается в том, что я не могу выполнить сортировку по двум столбцам. Имена столбцов - это поставщик и имя. Мне нужно сначала отсортировать по поставщику, а затем по имени.

Он сортирует только по одному столбцу по столбцу с поставщиком и игнорирует имя следующего столбца .. Все имена столбцов верны.

Это код.

         {% assign devices = "" | split: " " %}
         {% for device in site.data.devices %}
         {% assign devices = devices | push: device[1] %}
         {% endfor %}

         {% assign sorted = devices | sort_natural: 'name' | sort_natural: 'vendor' %}
         {% assign lastVendor = "" %}
         {% assign nbDevices = 0 %}

         {%- for device in sorted %}
         {%- assign nbDevices = nbDevices | plus:'1' %}
         {%- assign lastVendor = device.vendor %}` 
Here i start creating the table which gets filled with values from the yml files. 

Таблица при создании сортируется только по одному столбцу. Либо поставщик, либо имя.

Пробовал group_by как было предложено здесь , но затем в таблице не отображаются значения, не знаю почему.

Пробовал sort и sort_natural как эффект то же самое.

Любые предложения относительно того, что я здесь делаю неправильно.

1 Ответ

0 голосов
/ 28 августа 2020

Наконец выяснилось, почему код не работает.

Мы создавали наш сайт jekyll, используя docker. Образ docker устарел. Сборка с использованием только bundle exec jekyll serve решила проблему !! Теперь нужно обновить сборщик и драгоценные камни .... все еще выясняю, что все обновляется, и опубликую здесь, если это кому-то поможет.

...