Rethinkdb: как вызвать getAll с массивом предопределенных идентификаторов

Есть несколько идентификаторов:

let uIds = ['2e56c685-977b-41df-95dd-6adab3aef009', 
  'dc636c8c-46b8-4022-bea8-a17e692e75ce'
  ];

Как получить все записи с этими идентификаторами?

Это не работает:

r.db('test').table('users').getAll(uIds)   

И это тоже:

r.db('test').table('users').getAll.apply(this, uIds)

И даже это:

r.db('test').table('users').getAll(r.expr(uIds))

1 ответ

Решение

Ты можешь использовать r.args склеить аргументы:

.getAll (r.args (UID))

Если эти аргументы известны при построении запроса, вы также можете использовать apply, но это надо называть с правильной this аргумент:

var table = r.table('users');
table.getAll.apply(table, uIds)
Другие вопросы по тегам