У меня есть модель, в которой атрибуты могут иметь значение null, но когда читается атрибут null, я бы хотел предпринять специальное действие. В частности, я хотел бы бросить определенное исключение. То есть что-то вроде
class MyModel < ActiveRecord::Base
def anAttr
read_attribute(:anAttr) or raise MyException(:anAttr)
end
end
все хорошо, но это означает, что мне приходится вручную кодировать идентичный пользовательский метод доступа для каждого атрибута.
Я думал, что могу переопределить read_attribute, но мой переопределенный read_attribute никогда не вызывается.