65 lines
5.2 KiB
Markdown
65 lines
5.2 KiB
Markdown
---
|
||
ms.openlocfilehash: dcc6cf1e8adf15c4997d4d62cd34bde99f7d37cd
|
||
ms.sourcegitcommit: fcf3546b7cc208155fb8acdf68b81be28afc3d2d
|
||
ms.translationtype: HT
|
||
ms.contentlocale: ru-RU
|
||
ms.lasthandoff: 09/11/2022
|
||
ms.locfileid: "145109723"
|
||
---
|
||
# Обучающие курсы (также называемые схемами обучения)
|
||
|
||
Обучающие курсы — это коллекция статей, которые помогут вам освоить определенную тему. Доступны курсы для каждого продукта. Пример см. в разделе https://docs.github.com/en/actions/guides.
|
||
|
||
## Принцип работы
|
||
|
||
Данные обучающего курса по продукту указываются в двух местах:
|
||
|
||
1. Простой массив имен обучающих курсов указывается на титульном листе страницы индексов руководств по продуктам.
|
||
|
||
Например, для `content/actions/guides/index.md`:
|
||
```
|
||
learningTracks:
|
||
- getting_started
|
||
- continuous_integration
|
||
- continuous_deployment
|
||
- deploy_to_the_cloud
|
||
- hosting_your_own_runners
|
||
- create_actions
|
||
```
|
||
|
||
2. Дополнительные данного для каждого курса указываются в YAML-файле с именем **продукта** в каталоге `data`.
|
||
|
||
Например, в `data/learning-tracks/actions.yml` каждый элемент из массива `learningTracks` файла содержимого представлен дополнительными данными, такими как `title`, `description`, и массивом ссылок `guides`.
|
||
|
||
Один учебный курс в этом YAML-файле **для каждой версии** должен быть назначен "рекомендуемым" с помощью `featured_track: true`, в результате чего он будет отображаться в верхней части страницы руководств по продукту. Если это свойство отсутствует, тест завершится ошибкой.
|
||
|
||
Это свойство `featured_track` может иметь простое логическое значение (например, `featured_track: true`) или быть строкой, включающей инструкции управления версиями (например, `featured_track: '{% ifversion fpt %}true{% else %}false{% endif %}'`). Если вы используете управление версиями, у вас будет несколько `featured_track` для каждого YML-файла, но в каждой поддерживаемой версии должен отображаться только один. Тест завершится ошибкой, если для каждой версии имеется больше или меньше одной ссылки на рекомендуемый курс.
|
||
|
||
## Управление версиями
|
||
|
||
Управление версиями для обучающих курсов обрабатывается во время отрисовки страницы. Код находится в файле [`lib/learning-tracks.js`](lib/learning-tracks.js), который вызывается с помощью метода `page.render()`. Затем `components/guides` отрисовывает обработанные обучающие курсы.
|
||
|
||
Условные выражения Liquid **не** должны использоваться для управления версиями в YAML-файле для руководств. Автоматически отрисовывается только руководства по обучающим курсам, применяемые к текущей версии. Если курсы с руководствами, принадлежащими текущей версии, отсутствуют, раздел курсов не будет отображаться вообще.
|
||
|
||
Кроме того, для данных YML-файлов обучающих курсов поддерживается явное управление версиями. Формат и допустимые значения совпадают с форматом и значениями [свойства версий титульного листа](/content#versions).
|
||
|
||
Пример:
|
||
|
||
```
|
||
learning_track_name:
|
||
title: 'Learning track title'
|
||
description: 'Learning track description'
|
||
featured_track: true
|
||
versions:
|
||
ghes: '>=3.0'
|
||
guides:
|
||
- /path/to/guide1
|
||
- /path/to/guide2
|
||
```
|
||
|
||
Если свойство `versions` не включено, предполагается, что курс доступен во всех версиях.
|
||
|
||
## Принудительное применение схем
|
||
|
||
Схема проверки YAML обучающего курса находится в [`tests/helpers/schemas/learning-tracks-schema.js`](tests/helpers/schemas/learning-tracks-schema.js) и реализуется с помощью [`tests/content/lint-files.js`](tests/content/lint-files.js).
|