过程:
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));
}
转载于:https://blog.51cto.com/osric/1392374