YiiNewer
GridView的动作列这样配置,
[ 'class' => ActionColumn::className(), 'buttons' => [ 'view' => function($url, $model, $key) { return Html::a('查看', $url); }, 'update' => function($url, $model, $key) { return Html::a('编辑', $url); }, 'delete' => function($url, $model, $key) { $options = [ 'data-pjax' => 0, 'data-confirm' => '您确定要删除此项吗?', 'data-method' => 'post', ]; return Html::a('删除', $url, $options); } ], ]
view代表的查看动作,update代表更新的动作,delete代表删除动作
@alone_oo 已经很清楚了。看上面的代码,直接拷贝到你的gridView的操作列那里,运行起来就明白了
ajax验证的时候,ActiveForm::validate第二个参数可以选择需要验证的字段,只开启验证需要ajax验证的字段即可,其它字段反正前端后端都会再验证的。
- YiiNewer 赞了说说钱挣不够,累啊
- YiiNewer 发表了说说钱挣不够,累啊
- YiiNewer 回复了 dingjj2010 的回答
用父类\Exception捕获.
只要你在事务块内,使用save发生异常了也可以回滚。至于捕获哪个Exception,因为你捕获的范围是你操作的try块内代码,如果有想捕获的具体异常可以具体捕获,如果没有大可以直接捕获\Exception,不用担心什么,因为那段代码发生不了什么别的异常。注意查看你的表是什么引擎,必须是INNODB的。