Не трогать временные метки для определенных полейPhp

Кемеровские программисты php общаются здесь
Гость
Не трогать временные метки для определенных полей

Сообщение Гость »

У меня есть несколько моделей с метками времени и активными полями, а также несколько частей моего кода, где я их обновляю.
Я хочу иметь возможность обновлять модель и касаться меток времени только тогда, когда обновленная модель меняется дальше. чем активное поле.
Итак, мой код

Код: Выделить всё

 const leaveUntouched=["active"=>true]
...
$instance = $model::find($data["id"]);
$changed = array_diff_assoc($data,$instance->toArray());
$needTimestampTouch = array_diff_key($changed,self::leaveUntouched);
if (empty($needTimestampTouch))
$instance->timestamps = false;
$instance->fill($data);
$instance->save();
Было бы намного чище, если бы я мог определить это в самой базовой модели.
Должен ли я расширить метод Fill Eloquent/Model в своем базовом классе? И как мне это сделать?

Подробнее здесь: https://stackoverflow.com/questions/550 ... tain-field

Вернуться в «Php»