Сообщения об ошибках обычно назначаются объекту модели, к которому они применяются.
Если вы действительно хотите, вы можете взять эти ошибки и вставить их в хеш ошибок вашей адресной модели:
class Account < ActiveRecord::Base
before_destroy :check_for_destruction
def check_for_destruction
rejected = addresses.reject{|a| a.can_destroy?} # returns array of addresses that now have errors (they should return false)
rejected.each do |address|
address.errors.each do |e|
errors.add_to_base(e)
end
end
end
end
Нечто подобное должно работать, если вы определили метод Address#can_destroy?
.
(Отказ от ответственности: код не проверен, но должен дать вам хорошую отправную точку)