久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      詳解laravel如何安裝jenssegers/laravel-mongodb擴展

      項目中使用了mongoDB,所以就到最大的同性交友網(wǎng)站找到了星星最多的jenssegers/laravel-mongodb

      包安裝

      1、根據(jù)README,找到本地laravel對應的包版本
      詳解laravel如何安裝jenssegers/laravel-mongodb擴展

      2、開發(fā)環(huán)境中使用 composer requir 引入

      3、配置config/app.php

              /*          * mongoDB          */         JenssegersMongodbMongodbServiceProvider::class,

      4、database.php 配置

      "mongodb" => [       "driver" => "mongodb",       "host" => "127.0.0.1",       "port" => 27017,       "database" => "data",       "username" => "test",       "password" => "test",    ],

      :如果項目不涉及到mysql,那么可以直接將上面的默認數(shù)據(jù)引擎改成mongodb,關(guān)于env方法的說明就不具體闡述了

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

      5、代碼中使用

      // 獲取數(shù)據(jù)         $mongo = DB::connection("mongodb")             ->collection($collection) //            ->where("****","***")             ->first();

      問題

      1、unsupported driver [mongodb]

      tip1檢查phpinfo是否包含mongoDB拓展,如果沒有mongoDB的拓展,請自行安裝再試
      tip2重點!一定要檢查laravel的日志文件
      在我檢查了mongoDb拓展之后還是不支持,查看日志:

      Type error: Argument 3 passed to MongoDBDriverServer::executeQuery() must be an instance of MongoDBDriverReadPreference or null, array given {"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Type error: Argument 3 passed to MongoDB\Driver\Server::executeQuery() must be an instance of MongoDB\Driver\ReadPreference or null, array given at F:\project\interface_center_jtl\vendor\mongodb\mongodb\src\Operation\Find.php:299)

      追到具體的位置,通過修改此處的返回,再次打印,發(fā)現(xiàn)已經(jīng)可以正常使用get/first方法。insert方法同理,不過是修改同目錄下的InsertMany

      詳解laravel如何安裝jenssegers/laravel-mongodb擴展

      !!從源頭解決這個問題的正確方法,查看phpinfo里面,將mongo的拓展,升級到最新的stable版本!具體請查看我以前的文章centos源碼安裝php7以上的mongodb拓展,如果是windows,直接下載dll文件就行了

      2、Authentication failed.

      tip1檢查密碼賬號,再用工具連接,看看是不是自己配置錯誤

      tip2使用原生方法進行測試,如果原生能夠連接,包方法卻不能連接,那就考慮包的問題

       // %40是@符號的轉(zhuǎn)義  $manager = new MongoDBDriverManager("mongodb://mongo:user:passwd%40abcdef@127.0.0.1:27017");  $query=new MongoDBDriverQuery([]);  $cursor = $manager->executeQuery('test.test', $query);  dd($cursor);

      ·如上,發(fā)現(xiàn)依舊不能連接,考慮mongo的問題了,再次測試,同事發(fā)現(xiàn)連接寫法經(jīng)過修改之后就能成功!如下:

       $manager = new MongoDBDriverManager("mongodb://mongo:user:passwd%40abcdef@127.0.0.1:27017/data");

      ·百思不得騎姐之下,對比了mongoDB的版本,發(fā)現(xiàn)測試環(huán)境居然是個老版本。。/手動噴血

      ·在和運維與測試溝通了之后,為了保持線上版本的穩(wěn)定性和敏捷開發(fā)的機動性,遂決定做代碼兼容。
      再次打開包內(nèi)源碼,發(fā)現(xiàn)了如下的細節(jié)(敲黑板:注意看路徑,此時是jenssegers包內(nèi))
      詳解laravel如何安裝jenssegers/laravel-mongodb擴展知道原理之后,于是在配置文件中做了如下修改:

      詳解laravel如何安裝jenssegers/laravel-mongodb擴展

      至此,add、commint、push,收工!

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號