Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails:避免递归销毁回调_Ruby On Rails_Ruby On Rails 4_Recursion_Callback - Fatal编程技术网

Ruby on rails Rails:避免递归销毁回调

Ruby on rails Rails:避免递归销毁回调,ruby-on-rails,ruby-on-rails-4,recursion,callback,Ruby On Rails,Ruby On Rails 4,Recursion,Callback,我有两种型号: class Car < ActiveRecord::Base has_many :adverts, :dependent => :destroy end class Advert < ActiveRecord::Base belongs_to :car # Destroy the car, if there is no more adverts left after_destroy do self.car.destroy unle

我有两种型号:

class Car < ActiveRecord::Base
  has_many  :adverts, :dependent => :destroy
end

class Advert < ActiveRecord::Base
  belongs_to  :car

  # Destroy the car, if there is no more adverts left
  after_destroy do
    self.car.destroy unless self.car.adverts.exists?
  end
end
class-Car:销毁
结束
类广告
现在,当调用
advert.destroy
时,这项功能可以正常工作,但是当调用
car.destroy
时,事情会以递归循环结束


PS.rails 4.1.8

关于检查是否有剩余广告的建议来自这个问题,但是它与在关系上有一个
依赖::destroy
相冲突。它似乎与此相关: