2014-12-29 1 views

ответ

1

Существует специальная обработка для несуществующих полей (default: false), поэтому я думаю, что лучше переписать запрос, чтобы не называть .eq() отсутствующим полем. Вы можете либо проверить id первые:

.filter(r.row('id').eq('aaa').or(r.row('yyy').eq('aaa'))) 

или, возможно, путем установки по умолчанию поведения непосредственно на операции с отсутствующими полями:

.filter(r.row('yyy').eq('aaa').default(false).or(r.row('id').eq('aaa'))) 

КСТАТИ: обновление для этого ответа. После сообщения об ошибке в документации для RethinkDB выясняется, что это уже упоминалось в руководстве по устранению неполадок: http://www.rethinkdb.com/docs/troubleshooting/#filters-with-or-return-incorrect/unexpected-r

Смежные вопросы