Api 控制器基类(\application\common\controller\Api)
属性 | 说明 | protected $request; | Request 实例
| protected $failException = false; | 验证失败是否抛出异常
| protected $batchValidate = false; | 是否批量验证
| protected $beforeActionList = []; | 前置操作方法列表
| protected $noNeedLogin = []; | 无需登录的方法,同时也就不需要鉴权了
| protected $noNeedRight = []; | 无需鉴权的方法,但需要登录
| protected $auth = null; | 权限 Auth
| protected $responseType = 'json'; | 默认响应输出类型,支持 json/xml
| 方法 | 说明 | $this->loadlang($name); | 加载语言文件
| $this->success($msg = '', $data = null, $code = 1, $type = null, array $header = []); | 操作成功返回的数据
| $this->error($msg = '', $data = null, $code = 0, $type = null, array $header = []); | 操作失败返回的数据
| $this->result($msg, $data = null, $code = 0, $type = null, array $header = []); | 返回封装后的 API 数据到客户端
| $this->beforeAction($method, $options = []); | 前置操作
| $this->validateFailException($fail = true); | 设置验证失败后是否抛出异常
| $this->validate($data, $validate, $message = [], $batch = false, $callback = null); | 验证数据
|
Tips:该基类没有继承 TP 框架的控制器类,因此不可使用 TP5 的控制器方法。
后台控制器基类(\application\common\controller\Backend) trait 机制引入的方法(\app\admin\library\traits\Backend) 我们的控制器都必须继承自application/common/controller/Backend.php的\app\common\controller\Backend这个基类,这个基类application/admin/library/traits/Backend.php里引入的 use \app\admin\library\traits\Backend;它有八个公共方法,index/add/edit/del/multi/recyclebin/destroy/restore/ import;查看、添加、编辑、删除、批量更新、回收站、真实删除、还原、导入。
属性 | 说明 | protected $noNeedLogin = []; | 无需登录的方法,同时也就不需要鉴权了
| protected $noNeedRight = []; | 无需鉴权的方法,但需要登录
| protected $layout = 'default'; | 布局模板
| protected $auth = null; | 权限 Auth
| protected $model = null; | 模型对象
| protected $searchFields = 'id'; | 快速搜索时执行查找的字段
| protected $relationSearch = false; | 是否是关联查询
| protected $dataLimit = false; | 是否开启数据限制
| protected $dataLimitField = 'admin_id'; | 数据限制字段
| protected $dataLimitFieldAutoFill = true; | 数据限制开启时自动填充限制字段值
| protected $modelValidate = false; | 是否开启 Validate 验证
| protected $modelSceneValidate = false; | 是否开启模型场景验证
| protected $multiFields = 'status'; | Multi 方法可批量修改的字段
| protected $selectpageFields = '*'; | Selectpage 可显示的字段
| protected $excludeFields = ""; | 前台提交过来,需要排除的字段数据
| protected $importHeadType = 'comment'; | 导入文件首行类型
| 方法 | 说明 | $this->loadlang($name); | 加载语言文件
| $this->assignconfig($name, $value = ''); | 渲染配置信息
| $this->buildparams($searchfields = null, $relationSearch = null); | 生成查询所需要的条件,排序方式
| $this->getDataLimitAdminIds(); | 获取数据限制的管理员 ID
| $this->selectpage(); | Selectpage 的实现方法
| $this->token(); | 刷新 Token
| trait 机制引入的方法(页面):
|
| $this->preExcludeFields($params); | 排除前台提交过来的字段
| index()
| 查看 | recyclebin()
| 回收站
| add()
| 添加 | edit($ids = null)
| 编辑 | del($ids = "")
| 删除 | destroy($ids = "")
| 真实删除 | restore($ids = "")
| 还原 | multi($ids = "")
| 批量更新 | $this->import(); | 导入 |
Tips:该基类继承了 TP 框架的控制器类,因此可以使用 TP5 的所有控制器方法。
前台控制器基类(\application\common\controller\Frontend)
属性 | 说明 | protected $layout = ''; | 布局模板
| protected $noNeedLogin = []; | 无需登录的方法,同时也就不需要鉴权了
| protected $noNeedRight = []; | 无需鉴权的方法,但需要登录
| protected $auth = null; | 权限 Auth
| 方法 | 说明 | $this->loadlang($name); | 加载语言文件
| $this->assignconfig($name, $value = ''); | 渲染配置信息
| $this->token(); | 刷新 Token
|
Tips:该基类继承了 TP 框架的控制器类,因此可以使用 TP5 的所有控制器方法。
来源: https://blog.yinge.net.cn/article/Info/index/id-181 |