FastAdmin的基本使用
FastAdmin是一款基于ThinkPHP5+Bootstrap的极速后台开发框架。
1、在线命名管理
(1)菜单的生成
(2)一键 crud
首先要安装在线命名
在翡翠分类生成菜单,如下:
它的所在位置,如下:
(3)一对多关联
也可以在这里更改,如下:
2、命令行
如果不想使用在线命名管理,也可以直接在cmd输入命名,效果一样;
(1)一键生成CRUD
//生成fa_test表的CRUD php think crud -t test //生成fa_test表的CRUD且一键生成菜单 php think crud -t test -u 1 //删除fa_test表生成的CRUD php think crud -t test -d 1 //生成fa_test表的CRUD且控制器生成在二级目录下 php think crud -t test -c mydir/test //生成fa_test_log表的CRUD且生成对应的控制器为testlog php think crud -t test_log -c testlog //生成fa_test表的CRUD且对应的模型名为testmodel php think crud -t test -m testmodel //生成fa_test表的CRUD且生成关联模型category,外链为category_id,关联表主键为id php think crud -t test -r category -k category_id -p id //生成fa_test表的CRUD且所有以list或data结尾的字段都生成复选框 php think crud -t test --setcheckboxsuffix=list --setcheckboxsuffix=data //生成fa_test表的CRUD且所有以image和img结尾的字段都生成图片上传组件 php think crud -t test --imagefield=image --imagefield=img //关联多个表,参数传递时请按顺序依次传递,支持以下几个参数relation/relationmodel/relationforeignkey/relationprimarykey/relationfields/relationmode php think crud -t test --relation=category --relation=admin --relationforeignkey=category_id --relationforeignkey=admin_id //生成v_phealth_db2数据库下的fa_test表的CRUD php think crud -t test --db=v_phealth_db2
参数介绍
-t, --table=TABLE 表名,带不带表前缀均可 -c, --controller[=CONTROLLER] 生成的控制器名,可选,默认根据表名进行自动解析 -m, --model[=MODEL] 生成的模型名,可选,默认根据表名进行自动解析 -i, --fields[=FIELDS] 生成的数据列表中可见的字段,默认是全部 -f, --force[=FORCE] 是否覆盖模式,如果目标位置已经有对应的控制器或模型会提示 -l, --local[=LOCAL] 是否本地模型,默认1,置为0时,模型将生成在common模块下 -r, --relation[=RELATION] 关联模型表名,带不带表前缀均可 -e, --relationmodel[=RELATIONMODEL] 生成的关联模型名,可选,默认根据表名进行自动解析 -k, --relationforeignkey[=RELATIONFOREIGNKEY] 表外键,可选,默认会识别为使用 模型_id 名称 -p, --relationprimarykey[=RELATIONPRIMARYKEY] 关联模型表主键,可选,默认会自动识别 -s, --relationfields[=RELATIONFIELDS] 关联模型表显示的字段,默认是全部 -o, --relationmode[=RELATIONMODE] 关联模型,hasone或belongsto [default: "belongsto"] -d, --delete[=DELETE] 删除模式,将删除之前使用CRUD命令生成的相关文件 -u, --menu[=MENU] 菜单模式,生成CRUD后将继续一键生成菜单 --db[=key] 多数据库支持(参数为tp5中配置的数据库key 在application\config.php添加数据库配置信息) --setcheckboxsuffix[=SETCHECKBOXSUFFIX] 自动生成复选框的字段后缀 --enumradiosuffix[=ENUMRADIOSUFFIX] 自动生成单选框的字段后缀 --imagefield[=IMAGEFIELD] 自动生成图片上传组件的字段后缀 --filefield[=FILEFIELD] 自动生成文件上传组件的字段后缀 --intdatesuffix[=INTDATESUFFIX] 自动生成日期组件的字段后缀 --switchsuffix[=SWITCHSUFFIX] 自动生成可选组件的字段后缀 --citysuffix[=CITYSUFFIX] 自动生成城市选择组件的字段后缀 --selectpagesuffix[=SELECTPAGESUFFIX] 自动生成Selectpage组件的字段后缀 --ignorefields[=IGNOREFIELDS] 排除的字段 --editorclass[=EDITORCLASS] 自动生成富文本组件的字段后缀 --headingfilterfield[=HEADINGFILTERFIELD] 自动生成筛选过滤选项卡的字段,默认是status字段 --sortfield[=SORTFIELD] 排序字段
(2)一键生成菜单
//一键生成test控制器的权限菜单 php think menu -c test //一键生成mydir/test控制器的权限菜单 php think menu -c mydir/test //删除test控制器生成的菜单 php think menu -c test -d 1 //一键全部重新所有控制器的权限菜单 php think menu -c all-controller
3、令牌数据无效
当你要更改项目的域名,再次登陆FastAdmin你会发现登陆不了,报"令牌数据无效"
因为config.php的配置session的还是原来的域名,只要改回更当前域名一样就好:
或者直接设置domain => "" ,什么都不写也可以
4、关联的表在添加和修改时不能选
关联表了颜色表,在添加或修改时它却不显示出来并报错,如下:
从上面的报错,我们可以知道它这是找不到控制器。
解决方法:在前端改回正确的路径,让它找到控制器
修改完后到了这一步,又有报一个"naem"找不到(╥╯^╰╥);
注:有些人不报,修改完路径就可以,具体情况我也不知道
这个我上网找了很久,都没有找到答案,没有办法最后我直接修改fa_productscolor(主表)的字段,把color改成name
改完后重新执行一遍,选择“强制覆盖模式”把它覆盖,之后在前端改路径,这样就可以选择颜色了
还有一点要注意,外键表的外键字段命名:
主键表名+id
字段命名最好这样写,不然又会报错
5、密码输错多次提示"请于一天后登录"
在fa_admin表的loginfailure字段把10改成0即可
这样就可以再次登陆
6、修改或添加账号密码
(1)、添加账号密码
(2)、修改账号密码
在后台是不能修改初次登陆账号密码的,下图的操作没有修改和删除:
只能在数据库里fa_admin进行修改
fa_admin表密码字段加密算法:
md5(md5(password)+salt)
数据库修改两个字段即可,例如:
password:c13f62012fd6a8fdf06b3452a94430e5
salt:rpR6Bv
登录密码:123456
总结:
1、表必须有主键,字段有注释(FastAdmin有注释就显示注释,没有原样显示)
2、在线命名管理,如果数据库表加了修改了字段,一定要勾上强制覆盖模式
3、如果要删除CRUD和控制器菜单,最好在cmd里输入命名删除;
4、cmd使用命名,如果删除TestCop(驼峰命名)的CRUP和菜单,把它改成Test_cop就可以了
5、在线命名管理,生成的模型和控制器,最好和命名跟着表名写和全小写