Я тестирую с RethinkDB (да, я знаю, что проект закрыт).У меня две проблемы с его использованием.
строка не является функцией
Когда я пытаюсь извлечь данные из таблицы со следующим кодом, я получаю эту ошибку:
Ошибка 1
Unhandled rejection ReqlDriverCompileError: Object field 'embedEnabled' may not be undefined
at ReqlDriverCompileError.ReqlError [as constructor]
Код 1
var r = require('rethinkdb');
client.on('message', function (message) {
r.connect({ db: 'food' }).then(function(conn) {
r.table('cakes')
.get('7be8331d-754f-4f27-978f-1ffd0c626907')
.update({
messages: r.row('messages').append({
text: message,
username: "testuser"
})
})
})
И это моя ошибка при попытке просмотреть таблицу:
Ошибка 2
Cannot read property 'length' of undefined
Код 2
r.connect({ db: 'food' }).then(function(conn) {
r.table('cakes').changes().run(conn, function(err, cursor) {
cursor.each(function(err, item) {
io.emit("cakes_updated", item);
Hook.custom(JSON.stringify(item.new_val.username), JSON.stringify(item.new_val.text), '#fafafa')
// console.log(JSON.stringify(item.new_val.text))
});
});
});
Ошибка извлечения появляется, когда я успешно помещаю данные в базу данных с кодом 1 из инструмента RethinkDB Data Explorer из клиентского интерфейса.Затем у меня возникла идея подключиться к RethinkDB другим способом.
Код 3
var r = require('rethinkdb')({
port: 8080,
host: 'localhost',
db: 'negaia'
});´
Но все, что я получил, когда данные push были:
Ошибка 3
messages: r.row('messages').append({
^
TypeError: r.row is not a function
Это отредактированная версия, с которой я пробовал:
Код 4
r.table('cakes')
.get('7be8331d-754f-4f27-978f-1ffd0c626907')
.update({
messages: r.row('messages').append({
text: message,
username: "testuser"
})
})
Когда я пытаюсь просмотреть таблицу с этим кодом
Код5
r.table('cakes').changes().run(function(err, cursor) {
cursor.each(function(err, item) {
io.emit("cakes_updated", item);
Hook.custom(JSON.stringify(item.new_val.username), JSON.stringify(item.new_val.text), '#fafafa')
// console.log(JSON.stringify(item.new_val.text))
});
});
Я сразу получаю следующую ошибку:
Ошибка 5
Unhandled rejection ReqlDriverError: First argument to `run` must be an open connection.
at ReqlDriverError.ReqlError [as constructor]