ruby-on-rails – Rails,控制器中的字母数字验证
发布时间:2020-12-17 02:42:18 所属栏目:百科 来源:网络整理
导读:在我的应用程序中,我让用户选择一个用户名,就像twitter注册页面: https://twitter.com/signup 当用户开始输入用户名时,我希望实时让用户知道用户名是否可用有效. 我用来验证用户名的正则表达式是字母数字是: /^[a-z0-9]+[-a-z0-9]*[a-z0-9]+$/i 给定参数[
在我的应用程序中,我让用户选择一个用户名,就像twitter注册页面:
https://twitter.com/signup
当用户开始输入用户名时,我希望实时让用户知道用户名是否可用&有效. 我用来验证用户名的正则表达式是字母数字是: /^[a-z0-9]+[-a-z0-9]*[a-z0-9]+$/i 给定参数[:用户名] 在控制器中,如何验证用户名是否为字母数字.注意,我不是在这里保存记录只是验证.所以模型验证不起作用. 想法?谢谢 解决方法
您仍然希望使用模型验证.
也许这样的东西: class User validates :username,:format => { :with => /your regex/ },:uniqueness => true end # then in some controller action or rack app def test_username user = User.new(:username => params[:username]) # Call user.valid? to trigger the validations,then test to see if there are # any on username,which is all you're concerned about here. # # If there are errors,they'd be returned so you can use them in the view,# if not,just return success or something. # if !user.valid? && user.errors[:username].any? render :json => { :success => false,:errors => user.errors[:username] } else render :json => { :success => true } end end (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |