0

我想要一个“联系人”表单,允许用户同时输入他们的个人和工作电子邮件。我可以想象有两种方法可以做到这一点,但不确定它们是否是最佳的,并且可能缺少 Rails 的这样做方式:

  1. 让嵌套表单创建两次电子邮件模型,但为 :position 添加一个标志以识别它们。(隐藏字段这样做?)
  2. 设置一个将 :personal_email 和 :work_email 映射到 Email 模型的委托,以便模型单独处理它们。
  3. 还有什么?

目前我的电子邮件设置如下:

class Individual < ActiveRecord::Base
  attr_accessible :first_name, ...

  has_many :emails
  #delegate :personal_email, :to => :email, :allow_nil => true
end
class Email < ActiveRecord::Base
  attr_accessible :email_address, :owner_id, :owner_klass, :position, :verified, :email_type
  belongs_to :individual

  # WIP Returns 'primary' email for a user
  def personal_email
  end
end
4

0 回答 0