Для поиска с использованием laravel mongodb (с jenssegers/laravel-mongodb) необходимо сначала создать индекс. Пример: db.articles.createIndex({ "subject" : "text" })
, где «subject» - это атрибут, в котором текст выполняет поиск.
Тогда вы можете попробовать запрос в MongoDB: db.articles.find({ $text: { $search: "coffee" } })
и сделать это таким образом, чтобы Laravel:
$word = "coffee";
$response = Article::whereRaw(array('$text'=>array('$search'=> $word)))->get();
Если вы хотите выполнить поиск по фразе вам нужно использовать те кавычки. В mongodb: db.articles.find({ $text: { $search: "\"coffee shop\"" } })
и laravel:
$word = "coffee shop";
$response = Article::whereRaw(array('$text'=>array('$search'=> "\"" . $word . "\"")))->get();
Я уже использую его. Но не знаете, как использовать полнотекстовый поиск. – dang