https://github.com/zinmyoswe/laravel-multiauth
laravel multi authencation with user and admin
https://github.com/zinmyoswe/laravel-multiauth
Last synced: about 2 months ago
JSON representation
laravel multi authencation with user and admin
- Host: GitHub
- URL: https://github.com/zinmyoswe/laravel-multiauth
- Owner: zinmyoswe
- Created: 2019-05-25T20:56:59.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-02T06:23:58.000Z (over 2 years ago)
- Last Synced: 2025-02-15T20:52:48.504Z (4 months ago)
- Language: PHP
- Homepage:
- Size: 254 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
## About Laravel
`php artisan make:auth`In Config>auth.php It is need to built admin guards
```php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],'api' => [
'driver' => 'token',
'provider' => 'users',
],'admin' => [
'driver' => 'session',
'provider' => 'admins',
],'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],],
```
and then it is also need to built provider
```php
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],
],
```
Then, specify the admin password reset time```php
'passwords' => [
'users' => [
'provider' => 'users',
'table' => 'password_resets',
'expire' => 60,
],'admins' => [
'provider' => 'admins',
'table' => 'password_resets',
'expire' => 15,
],
],
```
Run `php artisan make:model Admin -m`Database> Migrations > 2019_06_05_024213_create_admins_table.php
```php
public function up()
{
Schema::create('admins', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('email')->unique();
$table->string('job_title');
$table->string('password');
$table->rememberToken();
$table->timestamps();
});
}
```Admin.php
```php
namespace App;use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;class Admin extends Authenticatable
{
use Notifiable;protected $guard = 'admin';
```Run `php artisan make:controller AdminController -r`
AdminController.php
```php
public function __construct()
{
$this->middleware('auth:admin');
}
```Web.php
```php
Route::prefix('admin')->group(function(){
Route::get('/login', 'Auth\AdminLoginController@showLoginForm')->name('admin.login');
Route::post('/login', 'Auth\AdminLoginController@login')->name('admin.login.submit');
Route::get('/', 'AdminController@index')->name('admin.dashboard');
});
```
LoginController.php
```php
middleware('guest')->except('logout');
$this->middleware('guest:admin')->except('logout');
}
}
```Run `php artisan make:controller Auth\AdminLoginController -r`
AdminLoginController.php
```php
middleware('guest:admin');
}
public function showLoginForm(){
return view('auth.admin-login');
}public function login(Request $request)
{
$this->validate($request,[
'email' => 'required|email',
'password' => 'required|min:6'
]);if (Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->get('remember'))) {
return redirect()->intended('admin');
}
return back()->withInput($request->only('email', 'remember'));//Attempt to log the user in
}
}
```admin.blade.php
```php@extends('layouts.app')
@section('content')
ADMIN Dashboard
@if (session('status'))
{{ session('status') }}
@endifYou are logged in!ADMIN
@endsection
````php artisan tinker`
` $admin = new App\Admin`
Run `php artisan config:clear`
Run `php artisan cache:clear`
`php artisan serve`
For User

`localhost/`For Admin

`localhost/admin/login`Hope this Help