Как выполнить действие только после обновления конкретного атрибута?

В фреймворке Yii 1.x, чтобы выполнить действие только после обновления конкретного атрибута модели, вам потребуется переопределить метод afterSave() модели и проверить, изменился ли указанный атрибут. Если да, то вы можете выполнять необходимое действие.

Для начала, определите метод afterSave() в вашей модели. В этом методе вам потребуется сравнить текущее значение атрибута с его предыдущим значением, чтобы определить, изменился ли атрибут после сохранения модели. Это можно сделать с использованием метода isAttributeChanged() модели.

Вот пример кода, который поможет вам проверить изменение конкретного атрибута в методе afterSave():

public function afterSave() {
   parent::afterSave();
   
   if ($this->isAttributeChanged('attribute_name')) {
       // Выполните ваше действие здесь, если атрибут 'attribute_name' изменился
   }
}

Здесь 'attribute_name' - это название атрибута, который вы хотите проверить на изменение. Замените его на фактическое название вашего атрибута в модели.

Метод afterSave() вызывается после успешного сохранения модели в базе данных, поэтому вы можете быть уверены, что атрибут был обновлен.

После определения метода afterSave() в вашей модели и добавлении необходимого действия, оно будет выполняться только в том случае, если указанный атрибут был изменен при сохранении модели.