Я пытаюсь проверить электронные письма, данные из списка электронных писем CSV. Поэтому я создал виртуальный атрибут invite_list, где, когда ему задан список писем, он будет зацикливаться и создать новую запись в модели invite_only_emails.Rails: Как получить ошибки от вложенных моделей
Теперь все в порядке, но как я могу уловить ошибку проверки, вызванную InvitedOnlyEmail во время цикла в модели Users, чтобы я мог использовать эту ошибку в контроллере?
Это моя основная модель:
class Users < ActiveRecord::Base
attr_accessor :invite_list
attr_accessible :invite_list
has_many :invited_only_emails
def invite_list=(list)
list.split(",").each do |address|
self.invited_only_emails.create! :email => address
end
end
def invite_list
self.invited_only_emails.map {|email| email.email}.join(',')
end
end
И это модель invited_only_emails:
class InvitedOnlyEmail < ActiveRecord::Base
attr_accessible :email
belongs_to :users
validates_format_of :email, :with => /^([\w\.%\+\-]+)@([\w\-]+\.)+([\w]{2,})$/i
end
Спасибо!