2016-04-14 21:21:07 2947次浏览 6条回答 0 悬赏 10 金钱
$model = new Admin();
if ($model->load(\Yii::$app->request->post()) && $model->save()) {
    return $this->redirect(['index']);
} else {
}

$model->save() 之前我要对字段进行加密处理,听说有个beforesave方法,死活找不到在哪,怎么用? 求教

最佳答案

  • 小诸葛 发布于 2016-04-15 10:07 举报
    public function beforeSave($insert)
    {
        if (parent::beforeSave($insert)) {
            // ...custom code here...
            return true;
        } else {
            return false;
        }
    }
    
  • 回答于 2016-04-14 21:34 举报

    你可以看下 BaseActiveRecord

    862 - 891 行有示例用法

  • 回答于 2016-04-15 12:24 举报

    有的啊。。。

  • 回答于 2016-04-16 15:33 举报

    在其对应的model类里面添加一个beforeSave()方法 ,具体怎么实现二楼已经贴出了代码

  • 回答于 2016-04-18 10:14 举报

    。。。。。。

  • 回答于 2016-04-19 16:31 举报
    $model = new Admin();
    if ($model->load(\Yii::$app->request->post()) && $model->validate()) {
        $model->admin_pwd = md5($model->admin_pwd);
        $model->save(false);
        return $this->redirect(['index']);
    } else {
    }
    

    $model->validate() //这个是验证数据
    验证数据以后 也就是数据通过规则验证了 此时我们在修改对象Model的属性
    然后在 $model->save(false) 因为是自己修改的,就不需要再次验证了。直接保存即可,。

您需要登录后才可以回答。登录 | 立即注册
tw1996
见习主管

tw1996

注册时间:2016-03-13
最后登录:2020-03-25
在线时长:37小时2分
  • 粉丝3
  • 金钱0
  • 威望0
  • 积分370

热门问题