«Класс ‘MongoDB Driver Manager’ не найден»

#laravel #mongodb

#laravel #mongodb

Вопрос:

Я использую Laravel и MongoDB с Xampp на моем Mac.
Я попытался сделать небольшую демонстрацию Laravel с MongoDB, например, прочитать данные из MongoDB и показать для просмотра. Вот моя модель:

 namespace App;

use IlluminateDatabaseEloquentModel;
use JenssegersMongodbEloquentModel as Eloquent;
use DB;

class account extends Eloquent
{

    public function getaccount(){
        $acc = DB::connection('mongodb')->collection('Account')->get();

        return $acc;
    }
}
  

И я вызываю эту функцию модели в своем контроллере:

 namespace AppHttpControllers;

use IlluminateHttpRequest;
use Appaccount;

class AccountController extends Controller
{
    public function index() {
        $account = new account();

        $data = $account -> getaccount();

        return view ('welcome', $data);
    }
}
  

И прочитал результат, на мой взгляд:

 @if(isset($data))
  @foreach($data as $dataValue)
  <a href="https://laravel.com/docs">{{ $dataValue -> avail_balance }}</a>
  @endforeach
@endif
  

Конечным является мой маршрут web.php:

 Route::get('/', 'AccountController@index');
  

Но при запуске я получил эту ошибку: «Класс ‘MongoDB Driver Manager’ не найден». Я установил драйвер MongoDB с помощью «sudo pecl install mongodb» и имею extension=mongodb.so в моем файле php.ini.
Когда я использую
Я действительно не знаю, как исправить.
Можете ли вы мне помочь?
Большое вам спасибо.

Ответ №1:

Вам нужно указать, какую коллекцию использовать для вашей модели

 use JenssegersMongodbEloquentModel as Eloquent;

class Article extends Eloquent
{
    protected $connection = 'mongodb';
    protected $collection = 'articles';
}