Skip to content

[3.3] compileColumnListing() on null #2123

Closed
@Ashiria7

Description

@Ashiria7
  • Laravel-mongodb Version: 3.3.x
  • PHP Version: 7.4.10
  • Database Driver & Version: I don't this means. If this is mongodb/mongodb, its version is 1.7.1
  • laravel/framework version: 5.5.50
  • MongoDB version: 4.4.0
  • OS: MacOS
    (The info above is use composer showphp -V and Mongo --version.This is the first time I report a bug, so if there are something wrong, please tell me how to get the right info. And I will update it immediately after I see it. Thank you very much)

Description:

I create a Article class which extends Jenssegers\Mongodb\Eloquent\Model, but it throwed the error when I use Article::create to insert a new document.

Symfony\Component\Debug\Exception\FatalThrowableError: Call to a member function compileColumnListing() on null in file /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php on line 133
Stack trace:
  1. Symfony\Component\Debug\Exception\FatalThrowableError->() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Schema/Builder.php:133
  2. Illuminate\Database\Schema\Builder->getColumnListing() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php:194
  3. Illuminate\Database\Eloquent\Model->isGuardableColumn() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php:180
  4. Illuminate\Database\Eloquent\Model->isGuarded() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/GuardsAttributes.php:157
  5. Illuminate\Database\Eloquent\Model->isFillable() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:229
  6. Illuminate\Database\Eloquent\Model->fill() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:152
  7. Illuminate\Database\Eloquent\Model->__construct() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:290
  8. Illuminate\Database\Eloquent\Model->newInstance() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:1066
  9. Illuminate\Database\Eloquent\Builder->newModelInstance() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:754
 10. Illuminate\Database\Eloquent\Builder->create() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1477
 11. Illuminate\Database\Eloquent\Model->__call() /Users/yukino/Project/PhpProject/Blog/vendor/jenssegers/mongodb/src/Jenssegers/Mongodb/Eloquent/Model.php:433
 12. Jenssegers\Mongodb\Eloquent\Model->__call() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1489
 13. Illuminate\Database\Eloquent\Model->__callStatic() /Users/yukino/Project/PhpProject/Blog/app/Http/Controllers/ArticleController.php:45
 14. App\Http\Controllers\ArticleController->addBlog() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
 15. call_user_func_array() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
 16. Illuminate\Routing\Controller->callAction() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
 17. Illuminate\Routing\ControllerDispatcher->dispatch() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Route.php:212
 18. Illuminate\Routing\Route->runController() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Route.php:169
 19. Illuminate\Routing\Route->run() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:658
 20. Illuminate\Routing\Router->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
 21. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41
 22. Illuminate\Routing\Middleware\SubstituteBindings->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 23. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 24. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php:57
 25. Illuminate\Routing\Middleware\ThrottleRequests->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 26. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 27. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
 28. Illuminate\Pipeline\Pipeline->then() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:660
 29. Illuminate\Routing\Router->runRouteWithinStack() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:635
 30. Illuminate\Routing\Router->runRoute() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:601
 31. Illuminate\Routing\Router->dispatchToRoute() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:590
 32. Illuminate\Routing\Router->dispatch() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
 33. Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
 34. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/app/Http/Middleware/EnableCrossRequestMiddleware.php:16
 35. App\Http\Middleware\EnableCrossRequestMiddleware->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 36. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 37. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/fideloper/proxy/src/TrustProxies.php:56
 38. Fideloper\Proxy\TrustProxies->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 39. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 40. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
 41. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 42. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 43. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
 44. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 45. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 46. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27
 47. Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 48. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 49. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:46
 50. Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 51. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 52. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
 53. Illuminate\Pipeline\Pipeline->then() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
 54. Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
 55. Illuminate\Foundation\Http\Kernel->handle() /Users/yukino/Project/PhpProject/Blog/public/index.php:55

And then I used Article::all() to test, I got this.

InvalidArgumentException: Data missing in file /Users/yukino/Project/PhpProject/Blog/vendor/nesbot/carbon/src/Carbon/Carbon.php on line 917
Stack trace:
  1. InvalidArgumentException->() /Users/yukino/Project/PhpProject/Blog/vendor/nesbot/carbon/src/Carbon/Carbon.php:917
  2. Carbon\Carbon->createFromFormat() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php:715
  3. Illuminate\Database\Eloquent\Model->asDateTime() /Users/yukino/Project/PhpProject/Blog/vendor/jenssegers/mongodb/src/Jenssegers/Mongodb/Eloquent/Model.php:98
  4. Jenssegers\Mongodb\Eloquent\Model->asDateTime() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php:129
  5. Illuminate\Database\Eloquent\Model->addDateAttributesToArray() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Concerns/HasAttributes.php:91
  6. Illuminate\Database\Eloquent\Model->attributesToArray() /Users/yukino/Project/PhpProject/Blog/vendor/jenssegers/mongodb/src/Jenssegers/Mongodb/Eloquent/Model.php:189
  7. Jenssegers\Mongodb\Eloquent\Model->attributesToArray() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:977
  8. Illuminate\Database\Eloquent\Model->toArray() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:1006
  9. Illuminate\Database\Eloquent\Model->jsonSerialize() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Support/Collection.php:1624
 10. Illuminate\Support\Collection->Illuminate\Support\{closure}() [internal]:0
 11. array_map() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Support/Collection.php:1632
 12. Illuminate\Support\Collection->jsonSerialize() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Support/Collection.php:1643
 13. Illuminate\Support\Collection->toJson() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Support/Collection.php:1743
 14. Illuminate\Support\Collection->__toString() /Users/yukino/Project/PhpProject/Blog/app/Http/Controllers/ArticleController.php:60
 15. App\Http\Controllers\ArticleController->getBlogList() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
 16. call_user_func_array() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
 17. Illuminate\Routing\Controller->callAction() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:45
 18. Illuminate\Routing\ControllerDispatcher->dispatch() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Route.php:212
 19. Illuminate\Routing\Route->runController() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Route.php:169
 20. Illuminate\Routing\Route->run() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:658
 21. Illuminate\Routing\Router->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
 22. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php:41
 23. Illuminate\Routing\Middleware\SubstituteBindings->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 24. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 25. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php:57
 26. Illuminate\Routing\Middleware\ThrottleRequests->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 27. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 28. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
 29. Illuminate\Pipeline\Pipeline->then() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:660
 30. Illuminate\Routing\Router->runRouteWithinStack() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:635
 31. Illuminate\Routing\Router->runRoute() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:601
 32. Illuminate\Routing\Router->dispatchToRoute() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Router.php:590
 33. Illuminate\Routing\Router->dispatch() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176
 34. Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:30
 35. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/app/Http/Middleware/EnableCrossRequestMiddleware.php:16
 36. App\Http\Middleware\EnableCrossRequestMiddleware->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 37. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 38. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/fideloper/proxy/src/TrustProxies.php:56
 39. Fideloper\Proxy\TrustProxies->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 40. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 41. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
 42. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 43. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 44. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php:30
 45. Illuminate\Foundation\Http\Middleware\TransformsRequest->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 46. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 47. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php:27
 48. Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 49. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 50. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php:46
 51. Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:149
 52. Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php:53
 53. Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php:102
 54. Illuminate\Pipeline\Pipeline->then() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:151
 55. Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() /Users/yukino/Project/PhpProject/Blog/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:116
 56. Illuminate\Foundation\Http\Kernel->handle() /Users/yukino/Project/PhpProject/Blog/public/index.php:55

Steps to reproduce

  1. I use composer create-project --prefer-dist laravel/laravel Blog "5.5.*" to create a project
  2. then composer require jenssegers/mongodb 3.3 and composer require tymon/jwt-auth. I config the jwt successfully
  3. Config
# .env
MongoDB_HOST=127.0.0.1
MongoDB_PORT=27017
MongoDB_DATABASE=phpmongo

# database.php
'mongodb' => [
            'driver' => 'mongodb',
            'host' => env('MongoDB_HOST', '127.0.0.1'),
            'port' => env('MongoDB_PORT', 27017),
            'database' => env('MongoDB_DATABASE', 'phpmongo'),
            'username' => env('MongoDB_USERNAME', ''),
            'password' => env('MongoDB_PASSWORD', ''),
            'options' => [
                // here you can pass more settings to the Mongo Driver Manager
                // see https://www.php.net/manual/en/mongodb-driver-manager.construct.php under "Uri Options" for a list of complete parameters that you can use

                'database' => env('DB_AUTHENTICATION_DATABASE', 'admin'), // required with Mongo 3+
            ],
        ],

# app.php
Jenssegers\Mongodb\MongodbServiceProvider::class,
  1. I create the Artcile.php and ArtcileController.php
<?php


namespace App;

use Jenssegers\Mongodb\Eloquent\Model;
use Jenssegers\Mongodb\Eloquent\SoftDeletes;

class Article extends Model
{
    protected $collection = 'blog';
    
    protected $connection = 'mongodb';

    use SoftDeletes;
    protected $dates = ['deleted_at'];

    protected $guarded = ['id'];

    protected $attributes = [
        'isdelete' => false,
    ];
}
<?php

namespace App\Http\Controllers;

use App\Article;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Tymon\JWTAuth\Facades\JWTAuth;

class ArticleController extends Controller
{
    public function addBlog(Request $request) {
        $title = $request->get('title');
        $tags[] = $request->get('tags');
        $mainContent = $request->get('mainContent');
        //$user = JWTAuth::parseToken()->authenticate();
        //DB::connection('mongodb')->collection('blog')->insert(['title' => $title])
        Article::create(['title' => $title]);
        return json_encode([
            'msg' => 'success'
        ], JSON_UNESCAPED_UNICODE);
    }

    public function getBlogList() {
        echo Article::where('isdelete', false)->get();
    }
}
  1. create route in api.php
Route::prefix('article')->group(function () {
    Route::post('add', ['as' => 'add', 'uses' => 'ArticleController@addBlog']);
    Route::get('get', ['as' => 'get', 'uses' => 'ArticleController@getBlogList']);
});

Actual behaviour

use postman to test the api, it throw the error

If need other info, I'll do my best to get it to you as soon as I can.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions