框架:laravel725
VUE:2.x
开发工具:phpstrom+sublime
环境:mysql5.7.30+centos+nginx+PHP7.3
安装laravel省略
1.安装laravel ide helper
https://packagist.org/ 搜索laravel ide
composer require --dev barryvdh/laravel-ide-helper
在config/app.php文件的providers数组最后添加
Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider::class
继续执行命令:
php artisan ide-helper:generate
重启phpstrom
就能看到提示
2.构建后台路由
在routes目录新建 admin/web.php
在web.php目录新增代码
include __DIR__.'/admin/web.php';
在admin/web.php文件新增代码
Route::group(['prefix'=>'admin'],function (){
Route::get('abc',function(){
return 1213123;
});
});
访问路由 localhost/admin/abc
3.使用migrations创建数据表+thinker+factory生成数据
php artisan make:model Model/Admin -m //创建模型的同时,migration
php artisan migrate //查看数据库生成了admins数据表 先参考下面修改up方法
php artisan tinker //往数据表填充数据 先参考下面修改好factories的文件
然后执行
factory(\App\Model\Admin::class,3)->create(); //我们生成3条数据,修改第一条的username 为 admin
生成admins Migration时。修改up方法
public function up()
{
Schema::create('admins', function (Blueprint $table) {
$table->id();
$table->timestamps();
$table->string('username')->unique(); //用户名唯一
$table->string('password'); //密码
});
}
进入 factories目录,打开UserFactory文件
$factory->define(User::class, function (Faker $faker) {
return [
'name' => $faker->name,
'email' => $faker->unique()->safeEmail,
'email_verified_at' => now(),
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
'remember_token' => Str::random(10),
];
});
//复制一份上面代码修改个别数据
$factory->define(\App\Model\Admin::class, function (Faker $faker) {
return [
'username' => $faker->name,
'password'=>$password?:$password = bcrypt('admin888')
];
});
创建控制器
<?php
namespace App\Http\Controllers\Admin;
//use App\Http\Controllers\Controller;
use App\Http\Controllers\Admin\BaseController;
use Illuminate\Http\Request;
class EntryController extends BaseController
{
//
public function loginForm(){
return view('admin.entry.login');
}
}
路由:
<?php
/**
* Created by PhpStorm.
* User: 海峡
* Date: 2020/8/19
* Time: 10:06
*/
Route::group(['prefix'=>'admin','namespace'=>'Admin'],function (){
Route::get('login','EntryController@loginForm');
});
创建视图,使用Laravel自带的 ui
composer require laravel/ui
php artisan ui vue --auth
然后我们就能看到首页,右上角出现了登录,注册按钮
借用登录页面做为后台登录页面,使用自带的auth验证,具体页面渲染省略
config/auth.php
'guards' => [ //守卫
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
],
'providers' => [ //提供者
'admins' => [ //新增admins的提供
'driver' => 'eloquent',
'model' => \App\Models\Admin::class,
],
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
],
VUE:
npm install vue
npm install --global vue-cli
vue init webpack my-project
cd my-project
#npm install
npm run dev