不支持的驱动程序 [mongodb] Laravel
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/36688621/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Unsupported driver [mongodb] Laravel
提问by Hymanhammer013
I am using Laravel 5.1 with MongoDB. I already installed
我在 MongoDB 中使用 Laravel 5.1。我已经安装了
https://github.com/jenssegers/laravel-mongodb
https://github.com/jenssegers/laravel-mongodb
Problem is I am getting this error when running my queries:
问题是我在运行查询时收到此错误:
Unsupported driver [mongodb]
But I already have my drivers installed in my machine. I am using Windows 10 and WAMP. I can confirm it with php info:
但是我已经在我的机器上安装了我的驱动程序。我正在使用 Windows 10 和 WAMP。我可以用php信息确认它:
I also check all my php.ini files which i already included my DLL's and looks fine. I have my drivers also.
我还检查了我所有的 php.ini 文件,这些文件已经包含了我的 DLL 并且看起来不错。我也有我的司机。
My jessengers version is v3.0.2
我的 jessengers 版本是 v3.0.2
回答by 151291
I think you are missing the line : Add the service provider in config/app.php:
我认为你错过了这一行:在 config/app.php 中添加服务提供者:
Jenssegers\Mongodb\MongodbServiceProvider::class,
Jenssegers\Mongodb\MongodbServiceProvider::class,
Refer the Documentation.
请参阅文档。
回答by Sagar Munot
Run this :
运行这个:
composer require jenssegers/mongodb:*
作曲家需要 jenssegers/mongodb:*
回答by Sagar Munot
composer require jenssegers/mongodb:*
作曲家需要 jenssegers/mongodb:*
install jenssegers package by above command
通过上面的命令安装 jenssegers 包
then
然后
composer update
作曲家更新
you need to make database related changes in .env file :
您需要在 .env 文件中进行与数据库相关的更改:
DB_CONNECTION=mongodb
DB_HOST=localhost
DB_PORT=27017
DB_DATABASE=mongodb
DB_USERNAME=
DB_PASSWORD=
and in config/database.php file :
并在 config/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(''),
],
modify above parameter as per your appropriate credentials.
根据您的适当凭据修改上述参数。
Also in config/app.php
同样在 config/app.php
Jenssegers\Mongodb\MongodbServiceProvider::class,
回答by Alex Blex
There are 2 mongodb drivers in php:
php 中有 2 个 mongodb 驱动程序:
- The legacy one: http://php.net/manual/en/book.mongo.php
- The recommended one: http://php.net/manual/en/set.mongodb.php
laravel-mongodb Readmereads:
WARNING:The old mongo PHP driver is not supported anymore in versions >= 3.0
警告:旧版 mongo PHP 驱动程序在 >= 3.0 版本中不再受支持
Laravel 5.1 can be used with either jenssegers/mongodb v2.2 or jenssegers/mongodb v3.0. The former requires legacy driver, the later requires new driver.
Laravel 5.1 可以与 jenssegers/mongodb v2.2 或 jenssegers/mongodb v3.0 一起使用。前者需要遗留驱动程序,后者需要新驱动程序。
Check which version of jenssegers/mongodb you are using, and make it agree with php mongodb driver.
检查您使用的是哪个版本的 jenssegers/mongodb,并使其与 php mongodb 驱动程序一致。