Пусть у меня есть эти документы в таблице Things:фильтра, где атрибут в поставляемом массиве
{
"name": "Cali",
"state": "CA"
},
{
"name": "Vega",
"state": "NV",
},
{
"name": "Wash",
"state": "WA"
}
Моего UI является состояние выбором, в котором пользователь может выбрать несколько состояний. Я хочу показать соответствующие результаты. SQL эквивалент будет:
SELECT * FROM Things WHERE state IN ('CA', 'WA')
Я попытался:
r.db('test').table('Things').filter(r.expr(['CA', 'WA']).contains(r('state')))
но не возвращает ничего, и я не понимаю, почему это не сработало бы.
Это работает для получения единого государства:
r.db('test').table('Things').filter(r.row('state').eq('CA'))
Это то, что я получаю, когда я копирую/вставляю строку в свой ответ: http://i.imgur.com/DEheCV1.png 'e: Невозможно использовать r.row во вложенных запросах. Вместо этого используйте функции « –
» Редактировал мой ответ, следующий за вашим комментарием: P – Kludge
А, очень интересно. Функция работает. Я надеялся, что будет более сжатый подход. –