এবার লারাভেল ui ইনস্টল করি। composer require laravel/ui
এবার vuejs ইনস্টল করি। php artisan ui vue –auth
এবার ডিপেন্ডেন্সি ইনস্টল করি। npm install
welcome.blade .php ফাইলটি ফিট করে এরকম করি
@extends('layouts.app')
@section('content')
<example-component></example-component>
@endsection
passport authenticate কনফিগার করা :
composer require laravel/passport
php artisan migrate
php artisan passport:install
এবার USER.php ফাইল এ নিচের মতো করে কনফিগার করি
<?php
namespace App;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Passport\HasApiTokens;
class User extends Authenticatable
{
use Notifiable, HasApiTokens;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = [
'email_verified_at' => 'datetime',
];
}
এবার app/Providers/AuthServiceProvider.php ফাইলটি ওপেন করে কনফিগার করি
<?php
namespace App\Providers;
use Laravel\Passport\Passport;
use Illuminate\Support\Facades\Gate;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
class AuthServiceProvider extends ServiceProvider
{
/**
* The policy mappings for the application.
*
* @var array
*/
protected $policies = [
'App\Model' => 'App\Policies\ModelPolicy',
];
/**
* Register any authentication / authorization services.
*
* @return void
*/
public function boot()
{
$this->registerPolicies();
}
}
এবার config/auth.php ফাইল এ কনফিগার করি
'api' => [
'driver' => 'passport',
'provider' => 'users',
],
মডেল ও ডাটাবেস এ লগইন ইউসার ছাড়া অন্য কেউ যাতে ডাটা এক্সেস না করতে পারে এজন্য মাইগ্রেশন ফাইল ও ইউসার ফাইল এর মাঝে সম্পর্ক করতে হবে মনে করি আমি student নাম একটি মাইগ্রেশন ফাইল একটি মডেল ও একটি কন্ট্রোলার আছে তাহলে এটাকে কনফিগার করতে প্রথমে মাইগ্রেশন ফাইল এ এভাবে রিলেশন করতে হবে।
$table->id();
$table->unsignedBigInteger('user_id');
$table->text('name');
$table->text('class');
$table->foreign('user_id')
->references('id')->on('users');
$table->timestamps();
Run Command :php artisan migrate
এরপর user.php ফাইল কে বলে দিতে হবে যে Student ক্লাস এ তোমার পারমিশন লাগবে এজন্য একটি function user.php ফাইল এ লিখতে হবে
// file user.php
public function posts()
{
return $this->hasMany(Student::class);
}