## 哪些人适合使用 tpAdmin 管理后台?
首先,很欢迎所有人都使用 tpAdmin 管理后台,但是:
* 如果你是一个对 ThinkPHP5 都不了解的 PHPer 或者不愿意好好看文档就直接下手使用的 PHPer ,或许这个框架不太适合你,因为简洁的开发模式到你手上可能更复杂了,你需要理解整个框架的思想,充分利用利用 traits 和公共控制器提供的方法,并且结合 ThinkPHP5 的模型、验证器使用,开发效率将大增
* 如果你是一个连 chrome 控制台都不知道而且不知道浏览器开发者工具怎么使用,不会看 Network 和 Console 的 PHPer,那么这个框架也不适合你,因为框架用到了大量的 ajax 请求,必须会使用浏览器开发者工具调试,后续版本更新会增加更多的 ajax 请求,你需要去学习浏览器开发者工具如何使用
* 如果你是一个想要各种组件的后台,或许这个框架也不适合你,这个框架提供的是灵活的开发模式,而不是各种很死的组件、去使用他们得看大量的前端文档,而且不容易灵活变动。如果你需要这些很强大的组件,你可以去 github 或者 npm 寻找,自己给加进去,tpAdmin 给你的是一种更灵活而又高效的开发模式
* 如果你是一个很喜欢问问题,框架出了任何 bug 都不自己看下日志,看下错误就直接问别人问题的 PHPer ,而且问问题前从来没用使用过搜索引擎,或许这个框架也不适合你,因为我也是一名小白,我也需要学习,我需要更多时间去学习,包括其他人,请仔细读文档( [ThinkPHP5 文档](www.kancloud.cn/manual/thinkphp5) 和 [tpAdmin 文档](doc.tpadmin.yuan1994.com) ,请尊重别人的劳动成果,否则你可能也得不到应有的尊重,下面的几个链接请您收藏好:
* [断言:不懂《提问的智慧》的人不会从初级程序员水平毕业]( https://phphub.org/topics/535)
* [PHP 之道](http://laravel-china.github.io/php-the-right-way/)
* [PHP 标准规范](https://psr.phphub.org/)
## 框架的设计思想
### 以表格为主
一个常规控制器包含的方法为 index, recycleBin, add, edit, forbid, resume, delete, recycle, deleteForever,所有的方法都是围绕一个表格列表的增删改查(CURD),其他的模式得自己写代码,常规的 CURD 直接使用 traits 即可
### 公共控制器集成很多常用方法
所有控制器都继承与一个公共控制器(`app\admin\Controller`),该控制器提供了所有会在 CURD 方法中常用的公共基础方法,CURD 方法一般都使用这些方法快速生成一个 CURD 方法
>[info] 所有的 CURD 方法都不在公共控制器中,而在对应的 traits (`app\admin\traits\controller\Controller`) 中,如果要使用常规 CURD 方法手动 use traits 就行,不需要使用可以利用公共控制器的基础方法进行快速封装
### CURD 方法集成在 traits 中
为了照顾到一些特殊控制器(不需要 CURD 方法的控制器),所以没有将 CURD 方法直接放在公共控制器中,需要使用 CURD 方法的控制器集成公共控制器后,然后手动使用 traits ,CURD 方法包括 index, recycleBin, add, edit, forbid, resume, delete, recycle, deleteForever 几个方法,如有特殊变动可以重写方法,每个方法可以结合前置方法 before 实现拦截、过滤、前置赋值等操作,如果不需要使用其中的某些方法,可以使用控制器的静态属性 `protect static $blacklist = ['delete', ...]` 指定你需要禁用的方法
### 模板使用继承和文件引入,实现模板复用
所有模板都继承于基础模板 `template/base.html` ,其他模板对基础模板的区块进行重写,对于 `form.html`,`th.html`,`td.html` 模板代码块是列表首页和回收站公共代码,故使用了 `include` 标签实现文件引入,再次实现模板复用,一处修改、多处生效。
## 请确保自己拥有基本的浏览器调试能力
本框架大量使用 ajax 请求,不通过浏览器调试很难抓取数据进行快速调试,如果你还不会使用浏览器调试,请利用搜索引擎自行脑补,如果你还在使用 360 或 IE 等浏览器,除非你是做前端需要测试浏览器兼容性,建议你马上卸载,换用 chrome 或者 firefox
---
>[info] 如果您是一名资深的前辈或者对该框架有自己的见解,您可以加群反馈或者去 github 提交 issues ,我非常欢迎您的建议,在此我非常感谢一位前辈在 v1.0 版本中给我提的建议,他的建议让我飞速进步,让 tpAdmin 管理后台改头换面,变得更规范、强大,非常的感谢这位前辈
![](https://box.kancloud.cn/89635812b6d62e6010d9b51437f1b985_707x196.png)
- 概要
- 开始使用
- 写在前面
- 目录结构
- 模板主题支持
- 前置方法before支持
- 数据返回
- 异常接管
- Rbac 权限管理
- 开始使用
- 用户管理
- 分组管理
- 节点管理
- 角色管理
- 使用流程
- 其他
- 代码自动生成 v1.2
- 示例一 - 一级控制器
- 示例二 - 多级控制器
- 示例三 - 从数据表生成
- 示例四 - 指定生成的文件
- 示例五 - 命令行模式
- 示例六 - 模拟命令行模式
- 代码自动生成
- 示例一 - 一级控制器
- 示例二 - 多级控制器
- 控制器
- 公共控制器
- traits 多继承 Controller
- 公开不授权控制器
- 其他控制器
- 标签扩展
- 模板
- 网站操作日志
- 节点图
- 行为驱动
- 其他后端方法
- Excel一键导出
- Excel一键导入
- 文件下载
- 邮件发送
- 七牛文件上传
- id加密
- 前端
- ajax请求
- 表单校验
- 丰富弹层
- 异步操作
- 表格溢出
- 随机字符串
- 自动面包屑导航
- 动态加载文件
- 文件上传
- Tab 切换
- 图片预览
- 二维码生成
- 日历组件
- 升级指导
- 更新日志
- FAQ