国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 語(yǔ)言 > PHP > 正文

laravel5.2實(shí)現(xiàn)區(qū)分前后臺(tái)用戶登錄的方法

2024-05-04 23:54:21
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

1.前臺(tái)登錄

直接使用laravel自帶的auth

php artisan make:auth

然后可以查看路由文件:

Route::group(['middleware' => 'web'], function () { Route::auth(); Route::get('/home', 'HomeController@index');});

執(zhí)行php artisan migrate

會(huì)發(fā)現(xiàn)生成了兩張表。

2.后臺(tái)登錄

編輯配置文件

config/auth.php

添加guards中的admin和providers中的admins

<?phpreturn [ 'defaults' => [  'guard' => 'web',  'passwords' => 'users', ], 'guards' => [  'web' => [   'driver' => 'session',   'provider' => 'users',  ],  'admin' => [   'driver' => 'session',   'provider' => 'admins',  ],  'api' => [   'driver' => 'token',   'provider' => 'users',  ], ], 'providers' => [  'users' => [   'driver' => 'eloquent',   'model' => App/User::class,  ],  'admins' => [   'driver' => 'eloquent',   'model' => App/Admin::class,  ], ], 'passwords' => [  'users' => [   'provider' => 'users',   'email' => 'auth.emails.password',   'table' => 'password_resets',   'expire' => 60,  ], ],];

3.創(chuàng)建數(shù)據(jù)模型

執(zhí)行php artisan make:model Admin --migration

然后修改database/migrations中的數(shù)據(jù)表結(jié)構(gòu),復(fù)制user表的就可以

執(zhí)行php artisan migrate 會(huì)發(fā)現(xiàn)生成了admin表

4.定義后臺(tái)路由

這里我直接定義了一個(gè)路由組

Route::group(['prefix' => 'admin' ,'middleware' => 'admin'], function () { Route::get('login', 'Admin/AuthController@getLogin'); Route::post('login', 'Admin/AuthController@postLogin'); Route::get('register', 'Admin/AuthController@getRegister'); Route::post('register', 'Admin/AuthController@postRegister'); Route::get('logout', 'Admin/AuthController@logout'); Route::get('/', 'Admin/AdminController@index');});

5.創(chuàng)建控制器

執(zhí)行

php artisan make:controller Admin/AuthControllerphp artisan make:controller Admin/AdminController

AuthController.php可參照Auth中的AuthController.php

<?phpnamespace App/Http/Controllers/Admin;use App/Admin;use Validator;use App/Http/Controllers/Controller;use Illuminate/Foundation/Auth/ThrottlesLogins;use Illuminate/Foundation/Auth/AuthenticatesAndRegistersUsers;class AuthController extends Controller{ use AuthenticatesAndRegistersUsers, ThrottlesLogins; protected $redirectTo = '/admin'; protected $guard = 'admin'; protected $loginView = 'admin.login'; protected $registerView = 'admin.register'; public function __construct() {  $this->middleware('guest:admin', ['except' => 'logout']); } protected function validator(array $data) {  return Validator::make($data, [   'name' => 'required|max:255',   'email' => 'required|email|max:255|unique:admins',   'password' => 'required|confirmed|min:6',  ]); } protected function create(array $data) {  return Admin::create([   'name' => $data['name'],   'email' => $data['email'],   'password' => bcrypt($data['password']),  ]); }}

AdminController.php

<?phpnamespace App/Http/Controllers/Admin;use Illuminate/Http/Request;use App/Http/Requests;use App/Http/Controllers/Controller;use Auth;class AdminController extends Controller{ public function __construct() {  $this->middleware('auth:admin'); } public function index() {  $admin = Auth::guard('admin')->user();  return view('admin.home'); }}

6.創(chuàng)建視圖

這里直接復(fù)制auth中的視圖和home.blade.php到一個(gè)新的admin文件夾中。 

修改login和register中表單的action,添加上admin前綴

修改layouts中的app.blade.php

<ul class="nav navbar-nav navbar-right">     <!-- Authentication Links -->     @if (Auth::guest('admin'))      <li><a href="{{ url('/login') }}">Login</a></li>      <li><a href="{{ url('/register') }}">Register</a></li>     @else      <li class="dropdown">       <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">        {{ Auth::guard('admin')->user()->name }} <span class="caret"></span>       </a>       <ul class="dropdown-menu" role="menu">        <li><a href="{{ url('/admin/logout') }}"><i class="fa fa-btn fa-sign-out"></i>Logout</a></li>       </ul>      </li>     @endif    </ul>

現(xiàn)在試一下前后臺(tái)分別登錄吧!

7.可能遇到的頁(yè)面跳轉(zhuǎn)問題

如果你遇到了這種情況可以嘗試修改一下Middleware/Authenticate.php

return redirect()->guest($guard.'/login');

以上所述是小編給大家介紹的laravel5.2實(shí)現(xiàn)區(qū)分前后臺(tái)用戶登錄的方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)VeVb武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到PHP教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 龙州县| 山东省| 南丰县| 昆明市| 大渡口区| 策勒县| 青浦区| 贺兰县| 县级市| 乐平市| 临沭县| 金山区| 中西区| 楚雄市| 错那县| 祁阳县| 富裕县| 大竹县| 康平县| 渝北区| 司法| 分宜县| 白朗县| 鄂托克前旗| 长岛县| 东兰县| 祁阳县| 辽宁省| 沙湾县| 毕节市| 平陆县| 七台河市| 抚松县| 武乡县| 吴堡县| 桐梓县| 西吉县| 巨鹿县| 游戏| 阳东县| 黔江区|