威
關注

關注後可及時瞭解他的動態資訊

課程筆記
  • 所屬章節課程:使用tinker與factory建構管理員初始數據

    $ php artisan thinker Command "thinker" is not defined. Do you want to run "tinker" instead? (yes/no) [no]: > yes Psy Shell v0.9.9 (PHP 7.2.1 — cli) by Justin Hileman >>> factory(App\Model\Admin::class,3)->create();

    1,执行完数据迁移php artisan migrate打开database/factories下的userfactory.php视频中是modelf。。.php 2,利用 php artisan thinker数据填充,可以快速创建测试数据 Command "thinker" is not defined. Do you want to run "tinker" instead? (yes/no) [no]: > yes Psy Shell v0.9.9 (PHP 7.2.1 — cli) by Justin Hileman >>> factory(App\Model\Admin::class,3)->create(); factotry()中的要和userf...php中新建的方法(App\Model\Admin::class)一样,3表示创建三条数据

    $ php artisan make:Controller Admin/EntryController创建控制器 $ php artisan make:Model Model/Admin -m通过过模型创建表,admin模型,-m创建一个migrate

    2019-07-200个赞

  • 所屬章節課程:子目錄網域綁定與建立後台登入控制器

    Route::get('login','Admin\EntryController@login');中间有个admin那么是不是以后写路由都要加上admin呢?不是,admin到底是谁呢?是http/controller/admin/entrycontroller中的命名空间namespace App\Http\Controllers\Admin;所以可以在下面统一申明一下'namespace'='Admin‘,完整的命名空间包括admin前面的,不过laravel可以自动补齐 Route::group(['prefix'=>'admin','namespace'='Admin']function(){ Route::get('login','Admin\EntryController@login'); });

    php artisan make:Admin/EntryController创建控制器,会出现在app/http/controller/admin/entryConetroller

    2019-07-200个赞

  • 所屬章節課程:使用使用者認證系統與獨立設定guard進行登入處理

    在用户验证的时候laravel默认的是user。php验证,这显然不是我们需要的,那要我们只想我们的admin需要配置,找到config/auth.php其中在对应的添加 'guards' => [ 'admin' => [ 'driver' => 'session', 'provider' => 'admins', ],] 'providers' => [ 'admins' => [ 'driver' => 'eloquent', 'model' => App\Model\Admin::class,//告诉要用admin,验证密码正确,存储session中 ],],然后在entry控制器中use Auth;再在loginform方法中$status= Auth::guard('admin')->attempt([ 'username'=>$Request->input('username'), 'password'=>$Request->input('password'), ]);不加guard(‘admin’)默认为user验证所以要用guard()指定,模型要继承user验证,否则无效

    return redirect('/admin/login')->with('error','密码错误');with临时的只显示一次,错误是存储session中试图中 @if(session('error')) <div class="err"> {{session('error')}} </div> @endif

    2019-07-210个赞

  • 所屬章節課程:使用中間件middleware進行登入權限驗證

    php artisan make:middleware adminMiddleware创建认证中间件

    未登录不允许访问后台主页,并跳到登录页面用命令创建中间件middleware,php artisan make:middleware AdminMiddleware建好的文件在app/http/middleware/Adminmiddleware.php写 if(!Auth::guard('admin')->check()){ return redirect('/admin/login'); }在Kernel.php文件中routsmiddleare(路由中间)写入'admin.auth' => \App\Http\Middleware\AdminMiddleware::class,在entry控制器中引用 public function __construct(){ $this->Middleware('admin.auth')->except(['login','loginForm']); }

    在adminMiddleware.php中要引入use Auth;

    2019-07-210个赞

  • 所屬章節課程:使用Blade模板引擎的模板繼承建構後台介面

    @section 和 @yield 指令。 @section 指令定义了视图的一部分内容,而 @yield 指令是用来显示指定部分的内容,@yield('content')在master柱模版中会员指定内容相当于占位符,如:@yield('content') 子模版继承柱模版 在定义一个子视图时,使用 Blade 的 @extends 指令指定子视图要「继承」的视图@extends('admin.layout.master'), 替换占位符(@yield('content'))的位置显示内容,需要使用@section('content')//开始 <p>This is my body content.</p>//显示指定内容 @endsection//结束

    2019-07-210个赞

  • 所屬章節課程:使用Auth&guard完成管理員退出

    public function logout(){ Auth::guard('admin')->logout(); return redirect('/admin/login'); } 视频中退出回出差;QLSTATE [42S22]:未找到列:1054'字段列表'中的未知列'remember_token'(SQL:更新`admins`设置`remember_token` = 3JCepKFTGrNywY7zhZFSaNauDZmEFCO3ZixltHtTgiJAQjWkIXPaASlqA4de其中`id` = 1) 表中没有remember_token字段,记住登录,生成令牌,下次查找令牌自动登录, 其中没有在admin模型中定义一个属性protected $rememberTokenName=‘’;就行了

    2019-07-210个赞