Как автоматически получить или создать документ со значением поля в CouchDB в одном запросе?

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

Я могу сделать это, отправив запрос GET, за которым следует запрос PUT, если нет документа с этим конкретным значением поля. Есть ли способ сделать это с помощью всего одного запроса POST?


person Harsh K    schedule 27.06.2017    source источник


Ответы (1)


Функции проектного документа (кроме обновлений) не могут каким-либо образом изменять данные. Так что нет, это невозможно.

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

person OrangeDog    schedule 27.06.2017