Closed darshan1tecstub closed 5 years ago
Please, show your implementation
`composer.json { "name": "laravel/lumen", "description": "The Laravel Lumen Framework.", "keywords": ["framework", "laravel", "lumen"], "license": "MIT", "type": "project", "require": { "php": ">=7.1.3", "kayrules/lumen-passport-mongodb": "^0.4.0", "laravel/lumen-framework": "5.8.*", "vlucas/phpdotenv": "^3.3" }, "require-dev": { "fzaninotto/faker": "^1.4", "phpunit/phpunit": "^7.0", "mockery/mockery": "^1.0" }, "autoload": { "classmap": [ "database/seeds", "database/factories" ], "psr-4": { "App\": "app/" } }, "autoload-dev": { "classmap": [ "tests/" ] }, "scripts": { "post-root-package-install": [ "@php -r \"file_exists('.env') || copy('.env.example', '.env');\"" ] }, "config": { "preferred-install": "dist", "sort-packages": true, "optimize-autoloader": true }, "minimum-stability": "dev", "prefer-stable": true }
app/User.php
namespace App;
use Illuminate\Auth\Authenticatable; use Laravel\Lumen\Auth\Authorizable; use Illuminate\Database\Eloquent\Model; use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract; use Illuminate\Contracts\Auth\Access\Authorizable as AuthorizableContract; use MoeenBasra\LaravelPassportMongoDB\HasApiTokens;
class User extends Model implements AuthenticatableContract, AuthorizableContract { use HasApiTokens, Authenticatable, Authorizable;
protected $fillable = [
'name', 'email',
];
protected $hidden = [
'password',
];
}
bootstrap/app.php
require_once DIR.'/../vendor/autoload.php';
(new Laravel\Lumen\Bootstrap\LoadEnvironmentVariables( dirname(DIR) ))->bootstrap();
$app = new Laravel\Lumen\Application( dirname(DIR) );
$app->withFacades();
// Register jenssegers/mongodb service provider before $app->withEloquent()
$app->register(Jenssegers\Mongodb\MongodbServiceProvider::class);
$app->withEloquent();
$app->singleton( Illuminate\Contracts\Debug\ExceptionHandler::class, App\Exceptions\Handler::class );
$app->singleton( Illuminate\Contracts\Console\Kernel::class, App\Console\Kernel::class );
// $app->middleware([ // App\Http\Middleware\ExampleMiddleware::class // ]);
$app->routeMiddleware([ 'auth' => App\Http\Middleware\Authenticate::class, ]);
// $app->register(App\Providers\AppServiceProvider::class); // $app->register(App\Providers\AuthServiceProvider::class); // $app->register(App\Providers\EventServiceProvider::class); $app->register(Kayrules\LumenPassport\PassportServiceProvider::class);
$app->router->group([ 'namespace' => 'App\Http\Controllers', ], function ($router) { require DIR.'/../routes/web.php'; });
return $app; `
Now I got the solution my self, I have used below given code there
`namespace App;
use Illuminate\Auth\Authenticatable; use Laravel\Lumen\Auth\Authorizable; use Jenssegers\Mongodb\Eloquent\Model as Eloquent; use Illuminate\Contracts\Auth\Authenticatable as AuthenticatableContract; use Illuminate\Contracts\Auth\Access\Authorizable as AuthorizableContract; use LucasCardial\LaravelPassportMongoDB\HasApiTokens;
class User extends Eloquent implements AuthenticatableContract, AuthorizableContract { use HasApiTokens, Authenticatable, Authorizable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'email', 'password', 'api_token',
];
/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = [
'password', 'api_token',
];
}`
I have used use LucasCardial\LaravelPassportMongoDB\HasApiTokens; instated of use MoeenBasra\LaravelPassportMongoDB\HasApiTokens;
{ "success": false, "status": 500, "message": "Trait 'MoeenBasra\LaravelPassportMongoDB\HasApiTokens' not found" }