Конфликта ="ошибка" не соблюдается с rethinkdbdash
Я использую rethinkdbdash в первый раз, и я пытаюсь просто создать пользователя, но выдает ошибку, если она существует. Из всей документации, которую я прочитал, следующий код должен работать, однако он продолжает вставлять, никогда не обнаруживая конфликт, когда я запускаю его более одного раза. В любом случае я делаю это неправильно?
r.table("users").insert({
"username": "blahblah"
},
conflict="error"
).run().then(function(response) {
console.log('Success ', response);
})
.error(function(err) {
console.log('ERROR occurred ', err);
})
1 ответ
Я понял это. Я пропустил очень большую часть документации. Метод конфликта смотрит на первичный ключ. В данном случае это "id". "username" - это общее имя.
Рабочий код:
r.table("users").insert({
"id": "blahblah"
},
conflict = "error"
).run().then(function(response) {
console.log('SUCCESS: ', response);
}).error(function(err) {
console.log('ERROR: ', err);
});