Конфликта ="ошибка" не соблюдается с 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);
});
Другие вопросы по тегам