Проблема, с которой мы столкнулись, заключается в том, что нам приходится делать представления вручную из GUI кушетки, но это была довольно громоздкая задача, поэтому этот блог о том, как делать представления автоматически.

В этом блоге мы узнаем, как создать скрипт команд curl и просто запустить этот скрипт для создания представлений, и представления будут автоматически созданы на сервере Couchbase.

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

Для создания проектного документа и видов из файла сценария:

Во-первых, вы должны создать файл .ddoc, имя файла должно совпадать с именем проектного документа, который вы хотите создать.

Затем внутри этого файла .ddoc вам нужно написать json для создания представления.

Его формат будет таким:

{"просмотры":{"электронная почта":{"карта":"функция (документ, мета) {\n emit(doc.email,meta.id);\n}"}}}

Где электронная почта — это имя представления, а карта имеет функцию, которую мы пишем в представлениях.

Если вы используете функции Javascript внутри своего представления, вы можете соответствующим образом изменить значение функции.

{"views":{"name":{"map":"function (doc, meta) {\n  if(doc.email!=null){\n  emit(doc.email,doc.name);\n}\n}"}}}

Если вы используете функцию уменьшения, вы также можете указать ее в том же json, используя элемент уменьшения.

Например:

{"views":{"name":{"map":"function (doc, meta) {\n  if(doc.email!=null){\n  emit(doc.email,doc.name);\n}\n}","reduce":"_stats"}}}

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

(doc, meta) {\n  if(doc.email!=null){\n  emit(doc.email,doc.name);\n}\n}","reduce":"_stats"},"code":{\n emit(doc.name,null);\n}}}

Затем сохраните этот файл с именем emailDocument.ddoc.

Так, например, теперь у вас есть

Дизайн-документ: emailDocument

Имя просмотра: электронная почта

Теперь для создания этого представления создайте файл сценария, например: curl.sh

И внутри файла сценария напишите эту команду:

curl -X PUT -H ‘Тип контента: application/json’ http://Администратор:‹пароль›@localhost:8092/user-account/_design/dev_email -d @email.ddoc

А затем сохраните этот файл.

И теперь, когда вы выполняете этот скрипт с помощью команды ./curl.sh

Это автоматически сделает представление в Couchbase.

И он даст вам ответ json, если он будет успешно составлен. JSON будет похож

{"ok":true,"id":"_design/dev_emailDocument"}