谁一开始就是大神?

behaviors自动填充怎么就报错了昵??[2.0]

public function behaviors(){
        return [
            'class' => TimestampBehavior::className(),
            'createdAtAttribute' => 'cdate',// 自己根据数据库字段修改
            'updatedAtAttribute' => 'mdate', // 自己根据数据库字段修改
            'value' => date('Y-m-d H:i:s', time()),

        ];
    }

这段代码,不知道错在那里。我放在model层 报错 Class cdate does not exist 怎么会这样昵。 数据库里字段没有错的。
求解?

还可以用beforeSave
因为你少一个[],
答案直接没了。。。。站长呢
虽然问题已解决,这里还是补充一下,
出现同样问题的可以试试以下方法:
楼主的代码除了少了一个[]括号外,
[[‘duration’,’begintime’, ‘cdate’, ‘mdate’], ‘required’]这个里面的’cdate’, ‘mdate’两个attributes可能需要删掉。
原因:
required 是在 timestampbehavior 之前执行。
required验证器执行时 timestampbehavior 还没来得及填写数据,如果此时’cdate’, ‘mdate’属性未填数据的话,required验证器会报错。结合app的错误日志,可以看看是不是required validate的问题

赞(0) 打赏
未经允许不得转载:菜鸟之家 » behaviors自动填充怎么就报错了昵??[2.0]

评论 抢沙发

登录

找回密码

注册