crowprince 2016-07-31 14:28:17 1960次浏览 8条回复 0 0 0

登录校验时出现如下错误如何解决:

D:\wamp64\www\lxblog\controllers\SiteController.php:87:
array (size=1)
  'username' => 
    array (size=1)
      0 => string 'Username "lixian" has already been taken.' (length=41)
  • 回复于 2016-07-31 15:21 举报

    这是使用vilidata()方法校验后出现的结果。哪位大神指点一下

  • 回复于 2016-07-31 15:54 举报

    怎么觉得你这是在注册?不是提示账号已占用吗?

  • 回复于 2016-07-31 16:01 举报

    找到 原因了,是因为rule方法里面的这句话[['username'], 'unique'],但是为什么呢,我也才是第一次登录呀,删掉它就行了,不知道为什么

  • 回复于 2016-07-31 16:02 举报

    求解,求解

  • 回复于 2016-08-03 14:23 举报

    这不是在注册的么?

    1 条回复
    回复于 2016-08-03 17:00 回复

    没有那确实是登录,我去掉rule方法里面的这句话[['username'], 'unique'],。就不提示错误,就可以登录成功

  • 回复于 2016-08-03 16:59 举报

    没有那确实是登录,我去掉rule方法里面的这句话[['username'], 'unique'],。就不提示错误,就可以登录成功

    2 条回复
    回复于 2016-08-03 18:31 回复

    登录里头为什么要用unique,你应该定义成require。
    unique的话它会自动去检测是否唯一,既然是登录,如果是一个正确的用户名那必然是重复的,报错。。。

    回复于 2016-08-03 18:50 回复

    哦,好像明白了。谢谢

  • 回复于 2016-08-08 09:55 举报

    应该是场景没有分清楚。unique是注册的时候用的。。用户名不能重复。登录的时候就不需要这个验证了,而是需要用户名存在。

    1 条回复
    回复于 2016-08-08 17:34 回复

    enen,知道了

  • 回复于 2016-08-12 11:28 举报

    可以使用场景 来规避此问题

您需要登录后才可以回复。登录 | 立即注册