Spec-Zone.ru › RethinkDB javascript

Команда ReQL: args

Синтаксис команды

r.args(array) → special

Описание

r.args — это специальный термин, используемый для вставки массива аргументов в другой термин. Это полезно, когда вы хотите вызвать многоаргументный термин, например getAll, с набором аргументов, сгенерированных во время выполнения.

Это аналогично использованию apply в JavaScript. (Однако обратите внимание, что args оценивает все свои аргументы перед передачей их в родительский термин, даже если родительский термин в противном случае допускает ленивую оценку.)

Пример: Получить Алису и Боба из таблицы people.

r.table('people').getAll('Alice', 'Bob').run(conn, callback)
// or
r.table('people').getAll(r.args(['Alice', 'Bob'])).run(conn, callback)

Пример: Получить всех детей Алисы из таблицы people.

// r.table('people').get('Alice') returns {id: 'Alice', children: ['Bob', 'Carol']}
r.table('people').getAll(r.args(r.table('people').get('Alice')('children'))).run(conn, callback)

Примечание: При использовании r.args с командой, принимающей необязательные аргументы, вы не должны включать необязательные аргументы в массив args.

// Wrong!
r.table('posts').indexCreate(r.args(['tags', {multi: true}]))
// Right
r.table('posts').indexCreate(r.args(['tags']), {multi: true})

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/javascript/args/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API