加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Authlogic:生成“已经发送电子邮件”错误两次

发布时间:2020-12-17 04:18:52 所属栏目:百科 来源:网络整理
导读:我正在使用authlogic和我的用户模型,登录字段设置为使用电子邮件,因此: acts_as_authentic do |c| c.login_field = :email end 如果我尝试创建新用户,并且该电子邮件已在使用中,则会两次添加重复的电子邮件错误:(来自控制台) user = User.new(:first_name =
我正在使用authlogic和我的用户模型,登录字段设置为使用电子邮件,因此:
acts_as_authentic do |c| 
  c.login_field = :email 
end

如果我尝试创建新用户,并且该电子邮件已在使用中,则会两次添加重复的电子邮件错误:(来自控制台)

user = User.new(:first_name => "fred",:last_name => "Smith",:email => User.last.email);user.valid?;errors = user.errors
=> {:email=>["has already been taken","has already been taken"]}

我猜这与使用电子邮件作为登录有关,也许?除了validates_format_of之外,我在电子邮件上没有任何其他验证,并且我尝试删除该验证(没有任何区别).

这是一个痛苦,因为它弄乱了我在验证失败时在表单上显示的错误.

在我尝试破解authlogic之前,有谁知道为什么会发生这种情况?谢谢,最大

解决方法

我刚遇到同样的问题.尝试在acts_as_authentic块中调用config.validate_email_field = false.它仍将验证登录字段,在我们的情况下,在电子邮件字段中,但只有一次.
acts_as_authentic do |config|
  config.login_field :email
  config.validate_email_field = false
    ...
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读