设计Rails - 将用户名验证为电子邮件

时间:2015-02-01 13:29:31

标签: ruby-on-rails devise

我按照this指南在设计验证中使用用户名和电子邮件,但是当我尝试创建新用户时,即电子邮件“new@username.es”的“newusername”我收到验证错误“你必须在电子邮件中包含@符号“但请参阅用户名字段。

我尝试在用户模型中使用格式验证,但它没有解决任何问题

class User < ActiveRecord::Base
  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable, :authentication_keys => [:login]

  attr_accessor :login 

  validates_uniqueness_of :username
  validates_presence_of :username
  validates :username, length: { in: 4..20 }
  validates_format_of :username, :with => /\A[-a-z]+\Z/

   #####   and also 

  validates :username,
   :presence => true,
   :uniqueness => { :case_sensitive => false },
   :format => { with: /\A[a-zA-Z]+\z/ },
   :length => { in: 4..20 }  

我在谷歌找不到任何有同样问题的人。

我将非常感谢你的帮助。

0 个答案:

没有答案