Мне очень нравится стиль организации и обновления данных couchdb, но есть несколько ситуаций, когда мне действительно нужно иметь возможность создать запись и определить, существует ли эквивалентная запись, прежде чем вернуться к пользователь. Единственная ситуация, в которой это абсолютно необходимо для моего приложения, - это регистрация пользователя. Я в порядке, когда все записи о регистрации пользователей идут в определенный, назначенный экземпляр couchdb, известный как «registration-instance».
Я хочу хэшировать user_id в некоторый _id для использования. Затем выполните установку с этим _id, но потерпите неудачу, если _id уже вставлен. Мне нужно вернуть пользователю, что имя пользователя уже зарезервировано, и я не могу обнаружить конфликт позже и разрешить его в этот момент, потому что у пользователя будет впечатление, что он зарезервировал имя пользователя.
Я не понимаю, почему couchdb не смог предоставить какой-либо способ сделать это, предполагая, что вы указываете, что вставки для определенного "типа" документа всегда направляются в конкретный экземпляр.