Ruby on Rails - 继承 - 多次调用回调

时间:2017-07-11 17:34:18

标签: ruby-on-rails activerecord

我有3个班级:

ApplicationRecord < ActiveRecord::Base
User < ApplicationRecord
Instructor < User

在ApplicationRecord类中,我实现了2个回调:

class ApplicationRecord < ActiveRecord::Base
  self.abstract_class = true

  before_validation :upload_image #Uploads BASE64 image data to AWS
  after_validation :destroy_image #If validations fail, destroy image from AWS
end

当我创建一个教师时,before_validation :upload_image被调用3次(我猜是因为2级继承)。有办法防止这种情况吗?我不想在Instructor类中编写这个调用,因为ApplicationRecord中的代码被多个类使用。

另外,我注意到在重新启动rails服务器后第一次发生这种情况。但在执行第二次API调用后,它又会再次发生。

0 个答案:

没有答案