首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当电子邮件是副本时如何在elsif上选择

当电子邮件是副本时如何在elsif上选择
EN

Stack Overflow用户
提问于 2014-06-12 19:02:58
回答 1查看 37关注 0票数 0

我有一个问题,当一封电子邮件是一个副本,它应该有自己的自定义弹出通过javascript。我使用@emailexists来完成这个任务,但是如果我不知道如何指定这个问题,那就是它实际上是一个复制,这是使用elsif而不是其他方法的原因。任何帮助都将不胜感激!

代码语言:javascript
复制
def create
  @ambassador = Ambassador.new(ambassador_params)
  if @ambassador.save
    puts "========================"
    puts "Successful Save"
    puts "========================"
    # redirect_to root_url, notice: 'Thank you for signing up!'
  elsif @ambassador.errors
    @emailexists = @ambassador.errors.full_messages
  else
    @errors = @ambassador.errors.full_messages
  end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-12 19:13:19

在这里,使用相同的电子邮件显式检查现有帐户可能更简单,而不是允许错误并试图从错误中检测特定的错误场景。

代码语言:javascript
复制
def create
  @ambassador = Ambassador.find_by_email(ambassador_params[:email].downcase)
  if @ambassador
    @emailexists = true
  else
    @ambassador = Ambassador.new(ambassador_params)
    if @ambassador.save
      puts "========================"
      puts "Successful Save"
      puts "========================"
      # redirect_to root_url, notice: 'Thank you for signing up!'
    else
      @errors = @ambassador.errors.full_messages
    end
  end
end

请注意,您还需要确保大使模型在保存之前会减少电子邮件地址,以简化后续的存在检查。

代码语言:javascript
复制
class Ambassador < ActiveRecord::Base
  attr_accessible :email

  # Not all database adapters use case-sensitive indices,
  # so this helps ensure uniqueness no matter what.
  before_save { email.downcase! }
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24192025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档