«Поиск» строки в базе данных MongoDB с MongoMapper - PullRequest
0 голосов
/ 21 декабря 2011

Я делаю веб-приложение, где использую MongoMapper и Sinatra. Интересно, как я мог реализовать функцию поиска по коллекции БД. Я хоть что-то вроде SQL:

SELECT * FROM posts WHERE match(title) against ("String to search");

Как я могу добиться этого с MongoMapper? Спасибо!

Ответы [ 2 ]

0 голосов
/ 21 декабря 2011

хорошо, это из моего проекта и работает:

Post.where(:title => Regexp.new(/^string/i))   # Limit output with: .limit(10)

Может быть, это регулярное выражение?

0 голосов
/ 21 декабря 2011

Вы запрашиваете документы, которые соответствуют корневому регулярному выражению с учетом регистра:

Post.where(:title => /^stringtosearch/).first

MongoDB не поддерживает полнотекстовый поиск, так что это лучшее, что вы можете сделать на данный момент.

...