Да, это, конечно, возможно. Вы создадите пару представлений, представляющих собой отсортированные списки («индекс») ваших данных, по одному на ключ.
Полезна ссылка Тобиаса. Однако стандартная документация CouchDB будет охватывать это также:
Например, в вашем проектном документе вам может потребоваться представление users_by_email
с ключами на основе поля email
; затем users_by_name
представление, введенное в поле username
и т. д. Поэкспериментируйте с временными представлениями в Futon до тех пор, пока не получите правильную работу своей функции, а затем постоянно сохраняйте ее в своем проектном документе.
Удачи!
P.S. Есть способ объединить все эти требования в одно представление. Вкратце, вы можете набрать ["email", "jsmith@example.com"]
или ["name": "john smith"]
, однако помните, что CouchDB расслаблен: более простой способ, описанный выше, будет работать нормально. Когда вы освоитесь с представлениями, вы сможете изучить этот «сопоставленный» стиль.