f0s*_*ter 5 ruby activerecord ruby-on-rails
我有一个父模型,正在通过诸如'@ client.update_attributes(params [:client]'之类的参数进行更新.在我的参数中是一个销毁'client_card'的调用.我在client_card上有一个before_destroy方法来阻止它我的before_destroy方法正在运行,但是,更新时,before_destroy上的错误不会传播到相关模型.有关如何在更新时将此模型错误传播到关联模型的任何建议吗?
class Client < ActiveRecord::Base
has_many :client_cards, :dependent => :destroy
validates_associated :client_cards
class ClientCard < ActiveRecord::Base
belongs_to :client, :foreign_key => 'client_id'
attr_accessible :id, :client_id, :card_hash, :last_four, :exp_date
before_destroy :check_relationships
def check_finished_appointments
appointments = Appointment.select { |a| a.client_card == self && !a.has_started }
if(appointments && appointments.length > 0 )
errors.add(:base, "This card is tied to an appointment that hasn't occurred yet.")
return false
else
return true
end
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
710 次 |
| 最近记录: |