or_

ReQL command: |, or_

Command syntax

bool | bool → bool
bool.or_([bool, bool, ...]) → bool
r.or_([bool, bool, ...]) → bool

Description

Compute the logical “or” of one or more values.

The or_ command can be used as an infix operator after its first argument (r.expr(True).or_(False)) or given all of its arguments as parameters (r.or_(True, False)). The standard Python or operator, |, may also be used with ReQL.

Calling or_ with zero arguments will return False.

Example: Return whether either a or b evaluate to true.

> a = True
> b = False
> (r.expr(a) | b).run(conn)

True

Example: Return whether any of x, y or z evaluate to true.

> x = False
> y = False
> z = False
> r.or_(x, y, z).run(conn)

False

Note: When using or inside a filter predicate to test the values of fields that may not exist on the documents being tested, you should use the default command with those fields so they explicitly return False.

r.table('posts').filter(lambda post:
    post['category'].default('foo').eq('article').or(
        post['genre'].default('foo').eq('mystery'))
).run(conn)

Related commands

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/python/or/

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部