Для разработчиков

Populate (config/page.js)

Конфигурация populate для блоков задаётся в apps/strapi/config/page.js. Она определяет, какие связанные данные подтягиваются при запросах к API.

Populate (config/page.js)

Конфигурация populate для блоков задаётся в apps/strapi/config/page.js. Она определяет, какие связанные данные подтягиваются при запросах к API.

Структура

const blocks = {
  on: {
    'content.rich-text': { populate: '*' },
    'blocks.hero': { populate: 'images' },
    'blocks.form': {
      populate: {
        employee: { populate: ['photo'] },
      },
    },
    // ...
  },
}

const page = {
  populate: {
    seo: { populate: { image: true, ogImage: { populate: '*' } } },
    breadcrumbs: { populate: '*' },
    blocks,
  },
}

Экспорты

ЭкспортИспользуется для
pageСтраницы (page)
articleНовости (new)
projectПроекты (project)
apartmentСтраница квартиры (apartment-page)
secondaryВторички (secondary-house)

Добавление populate для блока

При добавлении нового блока с relation или вложенными компонентами:

  1. Добавьте запись в blocks.on:
    'blocks.my-block': {
      populate: {
        relationField: { populate: ['image'] },
        nestedComponent: true,
      },
    },
    
  2. Используйте populate: '*' для подтягивания всех полей
  3. Вложенные populate — через объект { populate: { ... } }

Связь с API

Конфигурация из page.js подключается в контроллерах/сервисах при формировании populate для findOne/findMany. Стандартные эндпоинты Strapi не используют её автоматически — кастомные контроллеры применяют эту конфигурацию при запросах.

Copyright © 2026