新手问题 用户名为空的问题

jasonliu · February 14, 2014 · Last by jasonliu replied at February 18, 2014 · 2688 hits

目前在维护一个应用,偶尔会出现一些用户不能登陆的情况,查看数据库的时候发现用户名为空,但是我已经利用了 rails 的验证机制,规定了用户名的长度,mysql 也设置了用户名不能为空,请问是可能是什么原因导致的?

migration: t.string :name, null: false

validation validates :name, :length => { in: 1..20 }

是包含空白字符的字符串还是什么都没有

desc users 看一下你的设置是否真的生效。

migation 生成的表结构限制的是 null,不是""和" "

一个空格在你的 validation 应该也是通过的

可能是这些原因

用户名是一个空字符串'',一个用户说他输入了特殊的字符,下次登陆的时候就登陆不上了。我想是不是因为这个特殊字符通过了 rails 的验证,但是 mysql 并不识别这个字符,所以在存储的时候存为空字符?

You need to Sign in before reply, if you don't have an account, please Sign up first.