我有一个用户表,但这个表只保存了从其他数据库读过来的用户名,因此model中并没有password这个字段。登录的时候用户名可以本地库认证,密码需要从其他数据库认证密码的正确性,这种情况下,该如何生成activeform中的password项目,如何认证密码呢?
Page 1 of 1
activeform中没有对应的model项,应该怎么做
#2
Posted 06 March 2017 - 10:04 AM
自己 给模型添加一个password 字段 添加rules验证规则 这就相当于自定义字段了 因为数据表中没有这个字段
验证规则 你可以自己写一个内联验证方法
上例 没有验证用户名 你自己仿此写一个吧 用户名的验证也是验证存在性 你可以用自带的`exist`验证器来做
验证规则 你可以自己写一个内联验证方法
public function rules() { return [ // [['user_name', 'password', ], 'required'], ['password', 'validatePassowrd'], ]; } public function validatePassword($attribute, $params) { // 这里执行 远程验证 如果验证通过了 就什么都不做 如果没通过 $this->addError('password','密码不正确'); }
上例 没有验证用户名 你自己仿此写一个吧 用户名的验证也是验证存在性 你可以用自带的`exist`验证器来做
Share this topic:
Page 1 of 1