Spec-Zone.ru › CouchDB 3.5

/{db}/_design/{ddoc}

HEAD /{db}/_design/{ddoc}

Возвращает HTTP-заголовки, содержащие минимальный объём информации об указанном документе дизайна.

См. также

HEAD /{db}/{docid}

GET /{db}/_design/{ddoc}

Возвращает содержимое документа дизайна, указанного по имени, из базы данных, указанной в URL. Если вы не запрашиваете конкретную ревизию, всегда будет возвращена последняя ревизия документа.

См. также

GET /{db}/{docid}

PUT /{db}/_design/{ddoc}

Метод PUT создаёт новый именованный документ дизайна или новую ревизию существующего документа дизайна.

Для документов дизайна согласован набор полей и структура. В настоящее время они следующие:

  • language (string): определяет сервер запросов для обработки функций документа дизайна

  • options (object): параметры представления по умолчанию

  • filters (object): определение функций фильтрации

  • lists (object): определение функций списков. Устарело.

  • rewrites (array or string): определение правил переписывания. Устарело.

  • shows (object): определение функций отображения. Устарело.

  • updates (object): определение функций обновления

  • validate_doc_update (string): исходный код функции проверки обновления документа

  • views (object): определение функций представлений.

  • autoupdate (boolean): указывает, следует ли автоматически создавать индексы, определённые в этом документе дизайна. Значение по умолчанию — true.

Обратите внимание: для полей filters, lists, shows и updates объекты представляют собой сопоставления имён функций с их исходным кодом в виде строк. Для views используется такое же сопоставление, но значения — это объекты с ключами map и reduce (необязательный), которые также содержат исходный код функций.

См. также

PUT /{db}/{docid}

DELETE /{db}/_design/{ddoc}

Удаляет указанный документ из базы данных. Необходимо указать текущую (последнюю) ревизию, используя параметр rev для указания ревизии.

См. также

DELETE /{db}/{docid}

COPY /{db}/_design/{ddoc}

Метод COPY (не являющийся стандартным методом HTTP) копирует существующий документ дизайна в новый или существующий документ.

Поскольку индексы представлений на диске именуются по MD5-хешу определения представления, а операция COPY фактически не изменяет это определение, копируемые представления не потребуется перестраивать. Оба представления будут обслуживаться из одного и того же индекса на диске.

См. также

COPY /{db}/{docid}

/{db}/_design/{ddoc}/{attname}

HEAD /{db}/_design/{ddoc}/{attname}

Возвращает HTTP-заголовки, содержащие минимальный объём информации об указанном вложении.

См. также

HEAD /{db}/{docid}/{attname}

GET /{db}/_design/{ddoc}/{attname}

Возвращает файл-вложение, связанный с документом дизайна. Возвращаются необработанные данные связанного вложения (как если бы вы обращались к статическому файлу).

См. также

GET /{db}/{docid}/{attname}

PUT /{db}/_design/{ddoc}/{attname}

Загружает переданное содержимое в виде вложения указанного документа дизайна. Имя вложения должно быть строкой в кодировке URL.

См. также

PUT /{db}/{docid}/{attname}

DELETE /{db}/_design/{ddoc}/{attname}

Удаляет вложение указанного документа дизайна.

См. также

DELETE /{db}/{docid}/{attname}

/{db}/_design/{ddoc}/_info

GET /{db}/_design/{ddoc}/_info

Получает информацию об указанном документе дизайна, включая сведения об индексе, его размере и текущем состоянии документа дизайна, а также связанную с индексом информацию.

Параметры:
  • db – имя базы данных

  • ddoc – имя документа дизайна

Заголовки запроса:
  • Accept –

    • application/json

    • text/plain

Заголовки ответа:
  • Content-Type –

    • application/json

    • text/plain; charset=utf-8

Объект JSON ответа:
  • name (string) – имя документа дизайна

  • view_index (object) – информация об индексе представления

Коды состояния:
  • 200 OK – запрос успешно выполнен

  • 401 Unauthorized – неавторизованный запрос к защищённому API

  • 403 Forbidden – недостаточно прав / слишком много запросов с недействительными учётными данными

Запрос:

GET /recipes/_design/recipe/_info HTTP/1.1
Accept: application/json
Host: localhost:5984

Ответ:

HTTP/1.1 200 OK
Cache-Control: must-revalidate
Content-Length: 263
Content-Type: application/json
Date: Sat, 17 Aug 2013 12:54:17 GMT
Server: CouchDB (Erlang/OTP)

{
    "name": "recipe",
    "view_index": {
        "compact_running": false,
        "language": "python",
        "purge_seq": 0,
        "signature": "a59a1bb13fdf8a8a584bc477919c97ac",
        "sizes": {
          "active": 926691,
          "disk": 1982704,
          "external": 1535701
        },
        "update_seq": 12397,
        "updater_running": false,
        "waiting_clients": 0,
        "waiting_commit": false
    }
}

Информация об индексе представления

Ответ на запрос GET /{db}/_design/{ddoc}/_info содержит поле view_index (object) со следующей структурой:

  • compact_running (boolean): указывает, выполняется ли в данный момент уплотнение представления

  • sizes.active (number): размер актуальных данных в представлении в байтах

  • sizes.external (number): размер несжатого содержимого представления в байтах

  • sizes.file (number): размер представления на диске в байтах

  • language (string): язык определённых представлений

  • purge_seq (number): обработанная последовательность очистки

  • signature (string): MD5-подпись представлений документа дизайна

  • update_seq (number / string): последовательность обновлений соответствующей базы данных, проиндексированная на данный момент

  • updater_running (boolean): указывает, обновляется ли представление в данный момент

  • waiting_clients (number): количество клиентов, ожидающих представления из этого документа дизайна

  • waiting_commit (boolean): указывает, есть ли незавершённые фиксации в базовой базе данных, которые необходимо обработать

Copyright © 2025 The Apache Software Foundation — Licensed under the Apache License 2.0
https://docs.couchdb.org/en/3.5.1/api/ddoc/common.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API