Как использовать где оператор в ReactiveMongo? - PullRequest
2 голосов
/ 04 октября 2019

Я пытаюсь использовать оператор where в reactiveMongo для реализации полнотекстового поиска для числового и текстового полей, используя один и тот же API для обоих. Но я не могу получить правильный синтаксис для этого в reactive mongo.

Я следовал mongoDocument "https://www.tutorialspoint.com/mongodb-regex-search-on-integer-value" для поиска текста и Integer с использованием оператора where. Но не удалось реализовать в реактивном Mongo.

collection.find(BSONDocument("$where" -> BSONDocument("$regex" -> "/^columns.*/i.test(this.columns)".r.pattern.pattern())))
     .skip(offset).cursor[M]()
     .collect[List](num,Cursor.FailOnError[List[M]]())

, где M - любой класс дела

Но я получаю исключение: -

DatabaseException ['$ где получил неверный тип' (code = 2)]

1 Ответ

0 голосов
/ 09 октября 2019

правильный синтаксис для использования, где оператор, как показано ниже, как shell просто передать строку

collection.find(BSONDocument("$where" -> "/^r.*/i.test(this.name)"))
  .skip(offset).cursor[M]()
 .collect[List](num,Cursor.FailOnError[List[M]]())
...