public function Edit($f3) { // 权限检查 $this->requirePrivilege('manage_goods_brand_listbrand'); global $smarty; // 参数验证 $validator = new Validator($f3->get('GET')); $brand_id = $validator->digits()->min(1)->validate('brand_id'); if (!$brand_id) { $brand_id = 0; } $goodsBrandService = new GoodsBrandService(); $goodsBrand = $goodsBrandService->loadBrandById($brand_id); if (!$f3->get('POST')) { // 没有 post ,只是普通的显示 goto out_display; } unset($validator); $validator = new Validator($f3->get('POST')); $goodsBrand->brand_name = $validator->required()->validate('brand_name'); $goodsBrand->brand_desc = $validator->required()->validate('brand_desc'); $goodsBrand->brand_logo = $validator->validate('brand_logo'); $goodsBrand->is_custom = $validator->digits()->filter('ValidatorIntValue')->validate('is_custom'); $goodsBrand->custom_page = $f3->get('POST[custom_page]'); if (!$this->validate($validator)) { goto out_display; } $goodsBrand->save(); if (0 == $brand_id) { $this->addFlashMessage('新建商品品牌成功'); } else { $this->addFlashMessage('更新商品品牌成功'); } // 记录管理员日志 AdminLog::logAdminOperate('goods.brand.edit', '编辑品牌', $goodsBrand->brand_name); out_display: // 新建的品牌,reRoute 到编辑页面 if (!$brand_id) { RouteHelper::reRoute($this, RouteHelper::makeUrl('/Goods/Brand/Edit', array('brand_id' => $goodsBrand->brand_id), true)); } //给 smarty 模板赋值 $smarty->assign($goodsBrand->toArray()); $smarty->display('goods_brand_edit.tpl'); return; out_fail: // 失败从这里退出 RouteHelper::reRoute($this, '/Goods/Brand/ListBrand'); }