2016-04-18 3 views
0

Я использую Laravel 5.1 с MongoDB. Я уже установилНеподдерживаемый водитель [mongodb] Laravel

https://github.com/jenssegers/laravel-mongodb

Проблема в том, я получаю эту ошибку при запуске мои запросы:

Unsupported driver [mongodb] 

Но у меня уже есть свои драйверы, установленные в моей машине. Я использую Windows 10 и WAMP. Я могу подтвердить это с PHP информация:

enter image description here

Я также проверить все мои php.ini файлы, которые я уже включены моя DLL файлы и выглядит отлично. У меня есть и мои водители.

Моя jessengers версия v3.0.2

ответ

0

Есть 2 MongoDB драйверов в PHP:

laravel-mongodb Readme гласит:

ВНИМАНИЕ: старый драйвер Монго PHP не поддерживается больше в версии> = 3,0

Laravel 5,1 может быть использован либо jenssegers/MongoDB v2.2 или jenssegers/MongoDB v3.0. Первый требует устаревшего драйвера, а позже требуется новый драйвер.

Проверьте, какая версия jenssegers/mongodb вы используете, и соглашайтесь с драйвером php mongodb.

+0

Привет Спасибо за предложение, так что сейчас я использую драйвер устаревшего? Также в ссылке, которую вы мне дали, http://php.net/manual/en/set.mongodb.php кажется, что я могу видеть только файлы классов, где я могу найти файл расширения DLL? – jackhammer013

+0

Почему? Драйвер на изображении - новый. Что вам нужно сделать, так это подтвердить версию jenssegers/mongodb, которую вы используете. Он находится в 'composer.lock'. –

+0

Спасибо за помощь, я вижу композитор. Он говорит, что v3.0.2 для моих jessengers.mongodb – jackhammer013

1

Выполнить это:

композитор требует jenssegers/MongoDB: *

+0

Не могли бы вы объяснить, как это могло бы решить вопрос? – Timothy

+0

после установки пакета jenssegers –

1

композитор требует jenssegers/MongoDB: *

установить jenssegers пакет выше команды

затем обновление

композитор

вам нужно сделать изменения, связанные с базами данных в .env файла:

DB_CONNECTION=mongodb 
DB_HOST=localhost 
DB_PORT=27017 
DB_DATABASE=mongodb 
DB_USERNAME= 
DB_PASSWORD= 

и в конфигурации/database.php файл:

'default' => env('DB_CONNECTION', 'mongodb') 

'mongodb' => [ 
     'driver' => 'mongodb', 
     'host'  => env('DB_HOST', 'localhost'), 
     'port'  => env('DB_PORT', 27017), 
     'database' => env('DB_DATABASE','mongodb'), 
     'username' => env(''), 
     'password' => env(''), 
    ], 

изменение выше параметра в соответствии с вашими соответствующими учетными данными.

Также в config/app.PHP

Jenssegers\Mongodb\MongodbServiceProvider::class, 
3

Я думаю, что вам не хватает строку: Добавить поставщика услуг в конфигурации/app.php:

Jenssegers\Mongodb\MongodbServiceProvider::class,

Обратитесь к документации.

https://github.com/jenssegers/laravel-mongodb

+0

Хотя ссылка на потенциальное решение всегда приветствуется, ответ на переполнение стека всегда должен содержать основные части/точки решения в самом теле ответа. Просто ссылка на решение без каких-либо комментариев не считается приемлемым ответом. См. [Ask] о том, как сформулировать правильный ответ. – Magisch

+0

@Magisch - вы правы. я последую этому. и обновил мой ответ. – 151291

Смежные вопросы