model->setBeforeGetList(function ($query){ return $query->with(['permissions' => function($query){ $query->select('id');}]); })->getList(); } public function store(RoleRequest $request) { return $this->model->storeBy($request->all()); } public function show($id) { $role = $this->model->firstBy($id); $role->setAttribute('permissions', $role->permissions()->get()->toTree()); return $role; } public function update($id, RoleRequest $request) { return $this->model->updateBy($id, $request->all()); } public function destroy($id) { return $this->model->deleteBy($id); } }