過程:
1. 獲得被修改的數據
2. 將獲得的數據呈現到表單
3. 在表單中修改內容
4. 修改完畢提交表單保存修改
實現:
1. 修改show視圖模版,將修改連接中附上id值
2. 修改控制器
function actionUpdate($id){//yii框架已經封裝了$_GET方法,這裏url中的id值,可以直接作爲方法的值使用 $goods_model = Goods:model(); // 除了添加我們都使用Goods:model()來實例化模型 // 根據ID獲取商品信息,$goods_info是一個數據模型對像 $goods_info = $goods_model -> findByPk($id); // 將$goods_info 傳遞到視圖模版 $this->renderPartial('update',array('goods_model'=>$goods_info)); }
3. 修改updata視圖,完善表單,參考add視圖。
使用widget創建的表單,會自動關聯goods_model中的信息。
4. >
function actionUpdate($id){ $goods_model = Goods:model(); $goods_info = $goods_model -> findByPk($id); // 創建模型對象使用 new Goods(); save()時執行insert語句 // 創建模型對象使用 Goods:model(); save()時執行update語句 // 修改商品信息 if (isset($_POST['Goods'])){ foreach ($_POST['Goods'] as $k => $v){ $goods_info->$k = $v; } if($goods_info->save()) $this->redirect(......); } // $this->renderPartial('update',array('goods_model'=>$goods_info)); }