Моя первоначальная проблема заключается в том, что у меня есть классы, связанные друг с другом (own_to ..), и мне нужен один класс для отправки электронного письма, как только его дочерние элементы и / или сама меняются.Так как есть некоторые проблемы с детьми в обычном Rails способе использования «изменен?»моя идея заключалась в следующем: я использую некоторую переменную (глобальную? сессию?), где я храню изменения дочерних элементов after_update и читаю эту переменную в родительском after_update, например:
class House < ActiveRecord::Base
has_one :door
after_update :send_email
def send_email
all_changes = magically_available_variable[id]
sendmail(all_changes)
end
end
class Door < ActiveRecord::Base
belongs_to :house
after_update :store_changes
def store_changes
magically_available_variable[house.id][door_changes] = self.changes
end
end
Итак, мой вопрос,где я должен хранить такую переменную?Переменные сеанса недоступны в модели и не должны использоваться там.Я не уверен, будет ли она работать как глобальная переменная, потому что у каждого клиента должна быть своя собственная "magically_available_variable", и я думаю, что это тоже не будет хорошей практикой.Так, где еще я мог бы хранить такую переменную, чтобы она была доступна в моделях и сохранялась после "after_update" детьми?
Спасибо за вашу помощь!