Laravel框架中集成MongoDB和使用详解

吾爱主题 阅读:137 2021-09-07 16:22:00 评论:0

* 推荐组件

composer require jenssegers/mongodb ^3.3 -vvv(本人的laravel版本是5.5)

修改config/app.php

* 注册服务

Jenssegers\Mongodb\MongodbServiceProvider::class,

* 添加 Facades

'Mongo' => Jenssegers\Mongodb\MongodbServiceProvider::class,

* 修改数据库配置文件 config/database.php 中

添加 MongoDB 的数据库的信息:

?
1 2 3 4 5 6 7 8 'mongodb' => [    'driver' => 'mongodb' ,    'host'  => 'localhost' ,    'port'  => 27017,    'database' => 'mydb' ,    'username' => '' ,    'password' => '' , ],

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

改成:

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

修改配置文件.env

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 DB_CONNECTION=mongodb // 建立一个 UserController.php 控制器 php artisan make:controller UserController   public function index(){
   DB::collection( 'users' )    //选择使用users集合   ->insert([       //插入数据 
    'name' => 'wjb' ,
    'age'  => 29
   ]);
   $res = DB::collection( 'users' )->get(); //查询所有数据   dd( $res );
   }

* 设置一个访问路由, 此时时已成功插入和读取mongodb的数据

Eloquent 模型

* 在 config/app.php 配置文件中配置 MongoDB 的 Eloquent 类的别名

'Moloquent' => 'Jenssegers\Mongodb\Eloquent\Model',

* 新建一个 User.php 的 Model 类

php artisan make:model User

* 修改User模型

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php

   namespace App;   

 use Moloquent;
   use DB;   

 class User extends Moloquent
{
   protected $connection = 'mongodb' ; //库名   protected $collection = 'users' //文档名   protected $primaryKey = '_id' ; //设置id   protected $fillable = [ 'id' , 'name' , 'phone' ]; //设置字段白名单 
}

UserController.php控制器中修改:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 <?php

   namespace App\Http\Controllers;

   use Illuminate\Http\Request;
   use Illuminate\Support\Facades\DB;
   use App\User;
   class UserController extends Controller
{
   public function index(){
     User::create([      //插入数据 
      '_id'  =>1,
      'name' => 'boss' ,
      'phone' =>1308888888
     ]);
    dd(User::all());   //查询并打印数据   }
   }

以上这篇Laravel框架中集成MongoDB和使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/wangjinbao5566/article/details/79487047

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容