【发布时间】:2013-01-27 19:52:13
【问题描述】:
在 Rails 3 中,我想查看属性的值是否使用模型的 validates 选项有效,而无需尝试保存或创建。
我正在编写 AJAX API 的后端,它应该检查用户名与
validates :username, :length => {:minimum => 2, :maximum => 50}, :exclusion => {:in => RESERVED_USERNAMES}, :format => MY_REGEX, .etc
在用户模型中。这是在注册表单中的用户名字段旁边创建一个小勾号或交叉,因此用户不必等待查看用户名是否被使用。
我可以将它与正则表达式进行比较,但为了尽量保持我的代码 DRY,我认为在用户模型中使用验证会更好。
任何人都知道我该怎么做:
username = params[:username]
if User.not_found(:username => username) && User.validate(:username => username)
#yay!
else
#nope
end
(我已经让not_found 工作了)。
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 validation