_model = new UserModel(); parent::initController($request, $response, $logger); $this->_viewDatas['title'] = lang($this->_model->getClassName() . '.title'); $this->_viewPath .= strtolower($this->_model->getClassName()); helper($this->_model->getClassName()); } //Field별 Form Datas 처리용 protected function getFieldFormData(string $field, $entity = null): array { switch ($field) { case 'role': $roles = $this->request->getVar($field); $this->_viewDatas['fieldDatas'][$field] = is_array($roles) ? implode(",", $roles) : $roles; break; case 'passwd': $this->_viewDatas['fieldDatas'][$field] = $this->request->getVar($field); $this->_viewDatas['fieldDatas']['confirmpassword'] = $this->request->getVar('confirmpassword'); break; default: return parent::getFieldFormData($field, $entity); break; } return $this->_viewDatas['fieldDatas']; } public function getFields(string $action = ""): array { $fields = ["id", "passwd", 'name', "email", "role", "status"]; switch ($action) { case "index": case "excel": return ["id", 'name', "email", "role", "status", 'created_at']; break; case "view": return ["id", 'name', "email", "role", "status", 'updated_at', 'created_at']; break; default: return $fields; break; } } public function getFieldFilters(): array { return ["role", "status"]; } public function getFieldBatchFilters(): array { return parent::getFieldBatchFilters(); } }