我的MemberAction代码是
<?phpclass MemberAction extends Action{ public function insert() { header('Content-Type:text/html; charset=utf-8'); $Member = D('developers'); if($Member->create()) { $result = $Member->add(); if($result) { $this->success('注册成功!'); }else{ $this->error('注册失败!'); } }else{ $this->error($Member->getError()); } } }?>
<?phpclass MemberModel extends Model { protected $_validate = array( array("username","require","用户名不能为空"), array('username','','帐号名称已经存在!',0,'unique',1), array("username","checkLength","用户名长度不符合要求",0,'callback'), array('name','require','名字必须'), array("password","require","密码不能为空"), array("password","checkLength","密码长度的要求是5~15位之间",0,'callback'), array('repassword','password','两次密码输入不一致',0,'confirm'), ); protected $_auto = array( array('status', '1', self::MODEL_INSERT), array('create_time', 'time', self::MODEL_INSERT, 'function'), ); }?>
$Member = D('developers'); 不存在自定义模型类delelopers,所以实例化的是Model基类。所以你MemberModel 的验证没有生效。
$Member = D('developers'); 不存在自定义模型类delelopers,所以实例化的是Model基类。所以你MemberModel 的验证没有生效。
那应该怎么改呢?
$Member = D('Member');
$Member = D('Member');
是的 我改了 但是我的数据表是developers,这样是自动验证了,但是没有想数据库添加上注册的内容啊,那该怎么办?
MemberModel里加上 : protected $tableName = 'developers';