创建模型层绑定数据表
php artisan make:model Models/article -m
设置表字段
$table->bigIncrements('id');
$table->string('type',10);
$table->enum('sex',[0,1]);
$table->char('age',4);
$table->string('phone',20);
$table->string('email',30);
$table->text('contend');
$table->timestamps();
$table->softDeletes();
数据迁移
php artisan migrate
数据填充
php artisan make:factory UserLoginFactory
$factory->define(\App\Models\article::class, function (Faker $faker) {
return [
'type' => $faker->firstNameMale,
'sex' =>$faker->randomElement(['0','1']),
'age' => $faker->numberBetween(10,100),
'phone' => "$faker->tollFreePhoneNumber",
'email' => "$faker->freeEmail",
'contend' => $faker->realText(),
];
});
php artisan db:seed --class=UserLoginSeeder
// \App\Models\Article::truncate(); //清空表
factory(\App\Models\article::class,30)->create(); //填充几条数据
执行迁移数据 里面的命名可以自己更换
php artisan db:seed --class=UserLoginSeeder
laravel 中间件登录
创建中间件
php artisan make:middleware CheckAge
在 app/Http/Kernel.php 中的 $routeMiddleware方法中 注册中间件
'cents' => \App\Http\Middleware\CheckLogin::class,
中间件中写入
if (!auth()->check()) {
return redirect(route('admin.login'))->withErrors(['error' => '请登录']);
}
控制器代码
public function index()
{
if (auth()->check()){
return redirect(route('admin.index'));
}
return view('admin/login/login');
}
//登录处理
public function login(Request $request)
{
$post = $this->validate($request,[
'username'=>'required',
'password'=>'required'
],[
'username.required'=>'用户名不能为空'
]);
$bool = auth()->attempt($post);
if ($bool){
return redirect(route('admin.index'));
}
return redirect(route('admin.login'))->withErrors(['error'=>'登陆失败']);
}
列表页面控制器 退出登录
//退出登录
public function logout()
{
auth()->logout();
return redirect(route('admin.login'))->with('success','请重新登录');
}
注册页面
控制器代码
public function store(Request $request)
{
$post = $this->validate($request,[
'username'=>'required',
'password'=>'required'
],[
'username.required'=>'用户名不能为空'
]);
$data['name']="猜猜我是谁 邮箱轰炸你";
Mail::send('week3.email',['name' => $data['name']],function($message){
$to = '1335839171@qq.com';
$message ->to($to)->subject('回复');
});
// return view('week3.email',$data);
Article::create($post);
return redirect(route('article.index'));
}
分页页面搜索ajax删除
控制器
public function index(Request $request)
{
$name = $request->get('name');
//分页显示
$data = RoleModel::when($name,function ($query)use($name){
$query->where('name','like',"%{$name}%");
})->paginate($this->pagesize);
return view('admin.role.index',compact('data'));
}
删除
public function destroy($id)
{
//软删除
$get = RoleModel::find($id)
->delete();
//真正的删除操作
// $get = RoleModel::find($id)->forceDelete();
//if (!$get){
return redirect(route('role.index'))->with('success','删除用户失败');
}
return redirect(route('role.index'))->with('success','删除用户成功');
}
还原
public function restore($id){
User::onlyTrashed()->where('id',$id)->restore();
return redirect(route('admin.user.index'))->with('success','还原成功');
}
全选删除
public function delall(Request $request){
$ids = $request->get('id');
User::destroy($ids);
return ['status'=>0,'msg'=>'选择删除成功'];
}