A service provider to add support for Laravel Passport and MongoDB.
Installation using composer:
composer require hypnodev/laravel-mongodb-passportYou need to have your App\Models\User class extend hypnodev\Mongodb\Auth\User instead of the default Illuminate\Foundation\Auth\User. This user class extends laravel-mongodb eloquent user as well as adding all the standard and required authentication and laravel passport traits.
<?php
namespace App\Models;
use Illuminate\Notifications\Notifiable;
use hypnodev\Mongodb\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
}Then now to install passport, but with Mongodb support, please run: php artisan mongodb-passport:install
| Laravel | Passport | Package |
|---|---|---|
| 5.5.x | 4.0.x, 5.0.x, 6.0.x, 7.0.x | 1.1.x |
| 5.6.x | 4.0.x, 5.0.x, 6.0.x, 7.0.x | 1.1.x |
| 6.x | 4.0.x, 5.0.x, 6.0.x, 7.x, 8.x | 1.2.x |
| 8.x | 4.0.x, 5.0.x, 6.0.x, 7.x, 8.x, 9.x, 10.x | 3.0.0 |
For Laravel version < 5.x, add the service provider in config/app.php:
hypndev\Mongodb\MongodbPassportServiceProvider::class,For usage with Lumen, add the service provider in bootstrap/app.php.
$app->register(hypndev\Mongodb\MongodbPassportServiceProvider::class);The service provider will override the default laravel passport models in order to use mongodb's implementation of eloquent. There is no need to register any additional classes or add any additional configuration other than those outlined in Laravel Passport and MongoDB.