【发布时间】:2020-03-02 14:37:21
【问题描述】:
假设我有一个带有 after_save 方法的 Active Record 类,例如:
class Vehicle < ActiveRecord::Base
after_save :wheel_count
def wheel_count
puts 4
(我知道这是糟糕的设计;这只是一个例子)
我有这个类的一个子类,我想用它覆盖after_save 方法:
class Boat < Vehicle
def wheel_count
puts 0
但是,似乎子函数没有被调用。有没有办法根据实例动态选择after_save 函数?我想我可以按照以下方式做一些事情:
after_save :after_save_handler
def after_save_handler
wheel_count
但这似乎是一个糟糕的解决方案。
【问题讨论】:
标签: ruby-on-rails ruby rails-activerecord