Я делаю простой диспетчер задач, а кроме того, столбец completed:boolean
У меня есть столбец completed_time:datetime
, который мне нужно сохранить, когда задача пользователя будет завершена.Обновить один параметр, когда другой обновлен
Существует решение с hidden_field
и заполнение его текущим временем JS, когда задача проверки пользователя завершена, но я думаю, что это не очень хорошая идея, и это должно быть сделано на уровне контроллера или модели.
Итак, теперь у меня есть это в моей Task
модели:
before_update :add_completed_time
.
.
.
def add_completed_time
if self.completed?
self.completed_time = DateTime.now
end
end
Но он обновляет completed_time
столбец каждый раз, когда задача обновляется после завершения (напр, когда я отмечаю его как archived
.).
Как я могу назвать этот метод ТОЛЬКО, когда задача была отмечена как завершенная?
Спасибо!