xiaochuanworld
- xiaochuanworld 2017-12-17 已签到连续签到1天,获得了5个金钱
- xiaochuanworld 2017-12-15 已签到连续签到3天,获得了15个金钱
- xiaochuanworld 回复了 Jeen 的回答
你使用的已经是
$form->field($model, 'attribute');
的形式了,应该清楚模型更新方式的吧。。。
片段代码如下$model = $this->findModel($id); if($model->load(\Yii::$app->getRequest()->post())) { $model->name = trim($model->name); //... 一些自定义逻辑 $model->save(); //保存 }
可以参考Gii 生成的 CRUD 中 update的源码
@Jeen 问题又出现了,
if(Yii::$app->request->isPost){ $model=new Sysmenu(); $model->scenario='editadminmenu'; $post=Yii::$app->request->post(); if(!empty($post)){ return $model->editAdminMenu($post); } } ///接受POST数据,调用方法去修改,然后 public function editAdminMenu($data) { Yii::$app->response->format=Response::FORMAT_JSON; $model =$this->findOne($data->id); if($model->load($data)&&$model->validate()){ //$model->name='管理员列表'; $res=(bool)$model->save(); if($res){ return ["code"=>"1","msg"=>"修改成功!"]; }else{ return $this->getErrors(); } }else{ $this->addError('错误','验证失败!'); return $this->getErrors(); } }
首先,
$model =$this->findOne($data->id);
这里获取不到ID的值,然后我强制写为$model =$this->findOne(2);
之后提示我修改成功,可是数据没有变化~~
请问是哪里出错了呢? - xiaochuanworld 回复了 Jeen 的回答
你使用的已经是
$form->field($model, 'attribute');
的形式了,应该清楚模型更新方式的吧。。。
片段代码如下$model = $this->findModel($id); if($model->load(\Yii::$app->getRequest()->post())) { $model->name = trim($model->name); //... 一些自定义逻辑 $model->save(); //保存 }
可以参考Gii 生成的 CRUD 中 update的源码
@Jeen 大感谢!
- xiaochuanworld 赞了回答
你使用的已经是
$form->field($model, 'attribute');
的形式了,应该清楚模型更新方式的吧。。。
片段代码如下$model = $this->findModel($id); if($model->load(\Yii::$app->getRequest()->post())) { $model->name = trim($model->name); //... 一些自定义逻辑 $model->save(); //保存 }
可以参考Gii 生成的 CRUD 中 update的源码
- xiaochuanworld 回复了 Jeen 的回答
你使用的已经是
$form->field($model, 'attribute');
的形式了,应该清楚模型更新方式的吧。。。
片段代码如下$model = $this->findModel($id); if($model->load(\Yii::$app->getRequest()->post())) { $model->name = trim($model->name); //... 一些自定义逻辑 $model->save(); //保存 }
可以参考Gii 生成的 CRUD 中 update的源码
可是我如果表单上面,有50多个值,我就得写50多个赋值吗($model->name,$model->id,$model->pid,.............)?有没有好的一次过修改表单的方法?
- xiaochuanworld 2017-12-14 已签到连续签到2天,获得了10个金钱
- xiaochuanworld 2017-12-13 已签到连续签到1天,获得了5个金钱