Сегодня мы рады официально объявить о выпуске бета-версии Strapi .16. Этот выпуск содержит множество исправлений ошибок, все они посвящены улучшению опыта разработчиков при использовании Strapi, но, прежде всего, он содержит новую очень востребованную функцию.
В дорожной карте более 180 пользователей прислали информацию о своих примерах использования и о том, насколько важна для них эта функция.
Мы вас выслушали и рады представить вам функцию Повторяющиеся группы, которая позволяет вам группировать поля и дублировать их с помощью Strapi.
Вот почему вы тоже должны быть в восторге!
Гибкость в структуре данных
С помощью функции Повторяющиеся группы вы можете поздороваться с новым гибким способом структурирования вашего контента с помощью группировки полей.
Как разработчик, вы сможете предварительно настроить группы для повторного использования в вашем проекте. Как контент-менеджер, вы сможете динамически и быстро создавать страницы, используя предварительно настроенные группы.
Давайте рассмотрим возможности, предлагаемые этой новой функцией.
Новый способ создания богатых макетов
Вы можете быстро создать свою группу с помощью Content Type Builder. В представлении списка групп вам просто нужно нажать «Добавить группу», чтобы начать создание новой группы, задав имя группы и выбрав поля, которые вы хотите добавить в свою группу.
Весь процесс выполняется в Content Type Builder.
Добавить группу к типу контента также очень просто.
Поле "Группа" - это поле внутри типа контента. После создания группы вы можете добавить ее к своему типу контента.
Вы также можете настроить параметры и сделать их повторяемыми.
Таким образом, вы сможете реплицировать поле в Content Manager.
Настройте интерфейс в соответствии со своими потребностями
В Менеджере контента у групп есть специальное пространство на вкладке рядом с типами контента. Находясь в Content Manager, в представлении «Группа» вы сможете изменить порядок расположения вашей группы простым перетаскиванием ваших полей.
FoodAdvisor - Настройка часов работы
Чтобы подробно описать возможности функции Повторяющиеся группы, давайте углубимся в наш пример приложения Foodadvisor.
У каждого ресторана, показанного на FoodAdvisor, есть отдельная страница, на которой мы отображаем информацию о часах работы, деталях и местонахождении. Мы будем использовать функцию повторяющихся групп для часов работы и превратить их с простого HTML в повторяющиеся группы.
Давайте начнем!
Сначала нам нужно создать группу: Группа часов работы. Структура группы представлена ниже.
Название группы - «Часы работы»
Структура поля
- «Интервал_дня» (строка) обязателен
- «Open_hour» (строка) необязательно
- «Закрытие_часа» (строка) необязательно
После этой модификации новая структура Content Type Restaurant будет:
Название типа контента - «Ресторан»
Структура полей
- «Обложка» (СМИ)
- «Имя» (строка)
- «Описание» (текст)
- «Адрес» (строка)
- «Сайт» (строка)
- «Телефон» (строка)
- «Цена» (перечисление)
- «Район» (перечисление)
- «Обзор» (отношение)
- «Категория» (отношение)
- «Open_hours» (текст)
- «Open_hours» (группа)
В группе «Opening_hours»:
- «интервал_дня» (строка) обязательно
- «час_открытия» (строка) необязательно
- «закрытие_часа» (строка) необязательно
Данные, заключенные в текущее текстовое поле open_hours, выглядят следующим образом:
<li><p>Tue - Thu</p><p>12:00 PM - 10:30 PM</p></li>
<li><p>Fri - Sat</p><p>12:00 PM - 11:00 PM</p></li>
При переключении этого текста на повторяющуюся группу он будет структурирован следующим образом:
Entry #1 (of the opening_hours repeatable group field)
day_interval: "Sun"
opening_hour: "12:00 PM"
closing_hour: "10:30 PM"
Entry #2
day_interval: "Tue-Fri"
opening_hour: "12:00 PM"
closing_hour: "11:00 PM"
Вот вид полей Часы работы в Content Manager:
А вот так API выглядит в REST и в GraphQL:
Изменения в структуре данных также влияют на интерфейс. HTML был написан в административной панели Strapi.
Ответ JSON, полученный интерфейсом, не будет таким же. Внешний интерфейс должен будет перебирать массив «open_hours» вместо того, чтобы вставлять HTML в том виде, в каком он есть в DOM. Затем лицевая сторона автоматически создаст теги li
и p
.
Перейти на бета-версию 16
Если вы уже создаете свой проект с помощью Strapi, мы рекомендуем вам перейти на эту версию, используя следующее подробное руководство по миграции здесь.
С чего начать
Если вы новичок в Strapi, попробуйте!
Взгляните на руководство Приступая к работе, чтобы начать работу, или начните работу со следующей командной строкой:
yarn create strapi-app my-app --quickstart
Быть вовлечены
Делать вклад!
Участие в проекте с открытым исходным кодом может быть страшным, если вы никогда не делали этого раньше, и это не обязательно включает кодирование.
Даже если вам нравится писать код, другие виды участия - отличный способ поучаствовать в проекте и познакомиться с другими членами сообщества. Построение этих отношений даст вам возможность работать над разными частями проекта. https://opensource.guide
Например, мы всегда открыты для соответствующих гостевых сообщений от разработчиков с потрясающим контентом, которыми они могут поделиться!
А если у вас есть вопрос или вы хотите поздороваться 👋 мы всегда будем рады услышать от вас или оставьте комментарий ниже.
Поделитесь этой статьей, чтобы помочь большему количеству людей узнать о ней.
Спасибо сообществу
Strapi - продукт более 200 коммиттеров сообщества.
Спасибо всем бета-тестерам, которые помогли нам исправить этот выпуск! Мы делаем все возможное, чтобы найти и уничтожить все ошибки, которые мы обнаруживаем, до запуска, но лучший QA всегда исходят от проницательных тестировщиков, которые не хотят сдаваться. Спасибо.