args

ReQL command: args

Command syntax

r.args(array) → special

Description

r.args is a special term that’s used to splice an array of arguments into another term. This is useful when you want to call a variadic term such as getAll with a set of arguments produced at runtime.

This is analogous to using apply in JavaScript. (However, note that args evaluates all its arguments before passing them into the parent term, even if the parent term otherwise allows lazy evaluation.)

Example: Get Alice and Bob from the table people.

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

Example: Get all of Alice’s children from the table 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)

Note: When using r.args with a command that takes optional arguments, you must not include the optional arguments inside the args array.

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

Get more help

Couldn't find what you were looking for?

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

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部