Как Jekyll узнает, какой макет следует использовать для каждого конкретного URL-адреса?

Когда я запрашиваю определенный URL-адрес на веб-сайте, работающем на Jekyll, например. www.mysite.com/blog.html откуда Jekyll узнает, какой макет он должен отобразить для отображения blog.html?

Раньше я работал с Django, где был файл urls.py, в котором хранились пары URL-адресов и шаблонов для отображения для каждого URL-адреса. Я новичок в RoR и Jekyll и не смог найти ничего похожего на urls.py в Jekyll.


person Julia K Szopa    schedule 16.08.2011    source источник


Ответы (1)


Вы можете выбрать, какой макет использовать для конкретной сгенерированной страницы, используя переднюю часть YAML. Из документации по Jekyll:

_layouts

Это шаблоны, в которые вставляются сообщения. Макеты определяются для каждого поста во вступительной части YAML, которая описана в следующем разделе. Жидкий тег {{ content }} используется для ввода данных на страницу.

[...]

index.html и другие файлы HTML/Markdown/Textile

Учитывая, что в этом файле есть раздел YAML Front Matter, он будет преобразован Jekyll. То же самое произойдет с любым файлом .html, .markdown или .textile в корневом каталоге вашего сайта или каталогах, не перечисленных выше.

основная часть YAML — это раздел в верхней части файла, указывает метаданные для этого файла. Это выглядит примерно так:

---
layout: post
title: Blogging Like a Hacker
---
person Emily    schedule 16.08.2011