FastAdmin上手记录

FastAdmin是一个基于ThinkPHP框架开发的快速开发后台管理系统工具,具有以下特点:

  1. 快速开发:FastAdmin提供了丰富的后台管理系统功能模块,包括用户管理、权限管理、菜单管理、日志管理等,使用FastAdmin可以快速搭建一个功能完善的后台管理系统。

  2. 灵活可扩展:FastAdmin基于ThinkPHP框架,使用了模块化的开发结构,可以方便地进行功能扩展和定制,满足不同项目的需求。

  3. 丰富的插件支持:FastAdmin支持插件扩展机制,可以通过安装插件来增加系统功能,如文件管理、消息推送等,提供了更多的灵活性和可定制性。

  4. 多主题支持:FastAdmin提供了多个主题样式可供选择,可以根据需求进行切换,使得后台管理系统更加美观和个性化。

  5. 安全性:FastAdmin内置了丰富的安全机制,包括权限控制、用户登录验证、防止SQL注入等,保障系统的安全性。

总体来说,FastAdmin是一个功能丰富、易于扩展和定制的快速开发后台管理系统工具,适用于各种中小型项目的快速开发和部署。

1.dubug模式开启

配置项: .env—- debug=true

2.一键CRUD

通过在线命令—————-对应数据库字段————–一键生成控制器—————一键生成菜单栏

根据官方文档对应特殊字段进行操作 数据库 - FastAdmin框架文档

3.控制器

3.1登录与鉴权
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    protected $noNeedLogin = ['mywork'];
protected $noNeedRight = ['mywork1'];




public function mywork(){
return '无需登录和鉴权 work';
}
/**
* mywork1
**/
public function mywork1(){
return '无需鉴权但要登录 work1';
}
}
3.2 数据校验
1
2
protected $modelValidate = true; //是否开启Validate验证,默认是false关闭状态
protected $modelSceneValidate = true; //是否开启模型场景验证,默认是false关闭状态

4.API注册

controller控制器传参

5.JS

1
2
3
4
5

$this->assignconfig('userinfo', [
'usertoken'=>$this->auth->token,
'userid'=>$this->auth->id,
]);

5.携带参数

1
$this->succesi(“成功'', ur1 ( "index/index/ceshi2 ' , [ 'abc '=> '1234']), [ 'ceshi '=>1 , ' ceshi2'='22222']);

6.模拟登陆注册

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$openid="999";
$username="999";

$search_res=Db::name("user")->whereOr("username",$username)->whereOr("openid",$openid)->find();
if($search_res){
$loginRes = $this->auth->direct($search_res["id"]);
if($loginRes){

Cookie::set('uid', $this->auth->id );
Cookie::set('token', $this->auth->getToken());

$this->success('登录成功',$loginRes);
}
else{
$this->success('登录失败,未找到用户',$loginRes);
}
}
else{
$registerRes = $this->auth->register($username,$username,'','',[
"openid"=>$openid
]);
// Cookie::set('uid', $this->auth->id );
// Cookie::set('token', $this->auth->getToken());

$this->auth->logout();
Cookie::delete('uid');
Cookie::delete('token');
$this->success('执行注册',$registerRes);
}