/** * 修改字段页面. * * @access public * @return void */ public function edit($id) { $id = intval($id); if ($id < 1) { $this->error('字段参数非法'); } $modelField = new FieldModel(); $fieldInfo = $modelField->fetchFieldDetailInfo($id); if (empty($fieldInfo)) { $this->error('无效的字段'); } $fieldInfo['fieldName'] = substr($fieldInfo['fieldName'], strlen($this->_field_prefix)); // 去掉字段名前缀. $fieldInfo['formSet'] = $this->makeFormOptions(unserialize($fieldInfo['formSet']) ? unserialize($fieldInfo['formSet']) : array()); // 生成 formSet. $fieldInfo['searchRules'] = $this->makeFormOptions(unserialize($fieldInfo['searchRules']) ? unserialize($fieldInfo['searchRules']) : array()); // 生成搜索规则. $fieldInfo['jsRules'] = unserialize($fieldInfo['jsRules']); $validateRules = $this->getValidateRules(); // 将验证规则处理成 js 方便对应处理的关系列表. $validateRuleRelations = []; foreach ($validateRules as $row) { $validateRuleRelations[$row['name']] = ['text' => $row['text'], 'notice' => $row['notice']]; } $linkMenus = []; if ((int) $fieldInfo['lid'] > 0) { // 是联动菜单项. $modelLinklevel = new LinklevelModel(); $linkMenus = $modelLinklevel->fetchList(0); // 获取联动一级菜单. unset($modelLinklevel); } $this->assign(['fieldInfo' => $fieldInfo, 'fieldTypes' => $this->getFieldTypes(), 'formTypes' => $this->getFormTypes(), 'validateRules' => $validateRules, 'validateRuleRelations' => $validateRuleRelations, 'linkMenus' => $linkMenus])->display(); }