我是网站的管理员,当我注册新用户时,我想将我的用户名添加到新用户名中。例如:
我用户名:管理者
新用户名:试验,测验
结果:经理测试
我想验证结果。我在validate()之前使用了,并在其中添加了我的用户名:
protected function beforeValidate()
{
$this->username = Yii::app()->user->name.'_'.$this->username;
return parent::beforeValidate();
}
但存储到数据库的内容是:实际上我的程序在验证前调用了3次。
怎么办?我想在validate函数之前读一次。
3条答案
按热度按时间ergxz8rk1#
你可以检查一个新的记录是否在你创建时添加了前缀并为此使用“beforesave”。
q43xntqr2#
pgvzfuti3#
为什么不在保存之前进行验证呢?验证你知道你要添加的东西有什么意义呢?让validate不做任何事情,然后在beforeSave中添加你想要的东西。