关于YII save() 返回false
RT、
使用model的save时候返回失败 打印日志也没找到端倪。狗之查了些资料。现在分享出来
public function rules()
{
return array(
array("username, password, captcha", "required", "on"=>"login,create"),
array("username", "unique", "on"=>"create"),
array("password2","required","on"=>"create"),
array("captcha", "captcha", "allowEmpty"=>!extension_loaded("gd"), "on"=>"login,create"),
//验证密码和确认密码
array("password2","compare","compareAttribute"=>"password","message"=>"两次密码不一致","on"=>"create"),
);
}注意这里我是有写
array("password2","required","on"=>"create"),前端控制器 我写的是 public function actionIndex(){
$model = new User("create");
if(isset($_POST["User"])){
$model->attributes = $_POST["User"];
if($model->validate() ){
$a = $model->save(false);// 注意这里 当时我没写 false
}
}这样的原因就是。rules规则里 把我写的password2当做了数据库字段,必须要保存的。但是实际表里没有这个字段
解决办法
一 是去掉跟password2有关的规则
二 就是上面说的在save的时候把属性设置为false
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: yii rules规则中 unique的验证
- 下一篇:没有了
