Перейти к содержимому
Версия 1.0 ещё не выпущена; проект находится на стадии pre-MVP. См. возможности и ограничения версии 1.0.

Термины

Здесь объясняются термины интерфейса и документации Dee Wan. Если у слова несколько значений, в определении указано, какое используется в Dee Wan и как называется другое.

Одна установка Dee Wan: административный Worker, интерфейс администратора, управляющая база данных и учётные записи пользователей. Её создаёт установщик командной строки (npm run setup). Предпросмотр веб-установщика управляет тем же установщиком, но не является поддерживаемым путём установки.

  • Одна установка Dee Wan обслуживает несколько сайтов.
  • У неё одна управляющая база данных и один набор суперадминистраторов.
  • Не «инсталляция сайта». Сайт создаётся внутри установки Dee Wan, а не устанавливается.

Изолированное пространство (tenant) внутри установки Dee Wan: имя, slug, имя хоста, собственный контент, языки, роли и предоставленный пользователям доступ.

  • Создаётся в интерфейсе администратора, а не установщиком.
  • Имя хоста сайта (его домен) — это адрес его публичного API чтения. Значение заголовка Host в публичном запросе должно совпадать с этим именем.
  • В зависимости от топологии установки у сайта есть собственная база данных контента, или он использует общую.

Объект Cloudflare, который хранит DNS и настройки edge для домена. Учётные данные для очистки кэша и ограничение частоты запросов настраиваются для каждой зоны Cloudflare. В этих документах всегда пишется «зона Cloudflare», чтобы её не путали с зоной владения.

Определение одного вида контента: его поля и то, публичный он или приватный. Slug модели — это сегмент пути в /v1/<model>.

Свойство модели с именем и типом данных: текст, форматированный текст, число, boolean, select, дата, медиа, JSON, relation или компонент. Поле relation связывает запись с записями другой модели.

Одна запись модели, например одна статья. У неё есть id, slug и контент на одном или нескольких языках. В ответах API instance_id означает id элемента контента.

Языковые версии одного элемента контента, хранящиеся вместе. У каждого языка свой этап согласования и своя опубликованная версия. Действие над группой меняет этап сразу для всех языков; действие над отдельным языком — только для него. (В старых текстах может встречаться «группа локалей». Это то же самое.)

Настройка сайта, определяющая, что делает публичный API, когда у элемента нет контента на запрошенном языке:

  • strict: для этого языка ничего не отдаётся. Резервные языки не учитываются.
  • fallback: запрошенный язык, затем резервные языки этого языка в том порядке, в котором их перечисляет сайт (каждый со своими резервными языками). Если цепочка запрошенного языка не заканчивается отметкой Стоп, дальше проверяются язык сайта по умолчанию и основной язык записи. Отдаётся только опубликованный язык из этой цепочки. Поле locale указывает язык ответа.

Публикация делает текущую версию записи доступной через публичный API чтения. Публикация действует на один язык или сразу на все языки группы переводов. Снятие с публикации одного языка убирает только этот язык; остальные остаются опубликованными.

  • Меняет ответы /v1/… на публичном хосте сайта. Не меняет кода и ничего не развёртывает.
  • Не «публикация сайта». Сайт не публикуется. Публикуется его контент.

Неизменяемая копия контента записи, создаваемая при сохранении новой версии. У каждого снимка есть номер версии. Публикация выбирает сохранённую версию, которую публичный API отдаёт на каждом языке. Восстановление старой версии создаёт новую, а не меняет исходный снимок.

Элемент контента, у модели которого есть поле slides, хранящее документ страницы. См. контракт документа страницы.

HTTP API только для чтения на имени хоста сайта, под /v1/. См. справочник публичного API чтения.

Публичную модель может читать кто угодно. Приватную модель можно читать только с API-токеном сайта, в котором эта модель явно указана. Запрос к приватной модели без действительного токена получает тот же 404, что и модель, которой не существует.

Bearer-токен, создаваемый в разделе Настройки → API, который даёт доступ на чтение к указанным в нём приватным моделям. Он начинается с dw_site_ (или dw_site2_ после ротации ключа подписи), показывается один раз, может истечь и может быть отозван.

Короткоживущий токен (dw_prev_…), который CMS создаёт, когда редактор нажимает Предпросмотр. Он разрешает читать черновик одного элемента в течение 30 минут. Это не API-токен сайта.

Непрозрачное значение page.next_cursor, используемое для получения следующей страницы списка. Отправляйте его обратно без изменений.

Типизированный проект бэкенда, сгенерированный из моделей и опубликованного контента сайта: схема Prisma, миграции, Worker и типизированные маршруты, записанные в репозиторий, которым владеет пользователь. Генерация автономного бэкенда создаёт такой проект. Раздел Настройки → Код и публикация передаёт код в репозиторий и запускает развёртывание, но не генерирует проект.

  • Во время работы он не обращается к Dee Wan.
  • Его генерация ничего не развёртывает.
  • Он генерируется на вашей машине (npm run backend:generate или npm run backend:deliver). В CMS нет размещённого компилятора исходников.
  • Он содержит зафиксированную версию схемы и контента, а не непрерывный поток изменений: последующие публикации попадают в него только после повторной генерации и развёртывания.

Graduation — внутреннее название этого. Вы увидите его в именах файлов, например graduation.manifest.json. Оно означает то же самое, что генерация автономного бэкенда.

Какие файлы в автономном бэкенде кому принадлежат: generated (перезаписываются при каждой повторной генерации), owned (src/owned/, никогда не перезаписываются) или shared (записываются один раз, затем ваши). См. Расширение вашего бэкенда. Не зона Cloudflare.

Отказ от дальнейшей генерации из Dee Wan: автономный бэкенд остаётся обычным репозиторием, который вы развиваете самостоятельно. См. условия отключения.

Запуск конкретной ревизии на Cloudflare. Этим словом называют две вещи:

Термин Действует на Как
развёртывание установки Dee Wan admin Worker и admin UI npm run deploy
развёртывание сайта Worker и база данных одного автономного бэкенда кнопка Развернуть, которая вызывает build webhook CI репозитория

Генерация автономного бэкенда производит код. Развёртывание сайта его запускает.

Создание необходимых ресурсов Cloudflare (базы данных, хранилища, DNS) и сохранение сведений о них. Провижининг создаёт ресурсы, а развёртывание размещает на них код.

Избегать Потому что Говорить
«tenant» в UI это технический термин реализации сайт
«instance» для установки Dee Wan оно также означает элемент контента установка Dee Wan
«migrate» для импорта контента миграция означает изменение схемы импорт
«export» или «graduate» для автономного бэкенда экспорт означает передачу контента; graduate — название механизма generate standalone backend
«группа локалей» два имени для одной вещи группа переводов
«зона» сама по себе у неё два значения зона Cloudflare или зона владения
«sync» оно означало несколько вещей назовите направление
«workflow» для сайта с выключенным ревью при выключенном согласовании у записи нет этапа проверки publish / unpublish

Стабильная версия ещё не выпущена (pre-MVP)
Коммит исходного кода: e207e63239a627fbd2ae9c414ef7c6eb19fcfe5a (с локальными изменениями)
Дата сборки (UTC): 2026-10-21T09:28:24.214Z
Коммит для обновления: не определён: в рабочей копии есть изменения. Примечания к выпуску