Я использую метод isDirty()
в моем контроллере, чтобы проверить, изменилось ли какое-либо поле. Затем я сохраняю старые данные поля и новые данные в table
. Код работает нормально;однако, как я могу optimize
этот код?
Используя приведенный ниже код, мне придется снова и снова писать каждое имя поля. Если request->all()
имеет 20 полей, но я хочу проверить шесть полей, если они изменены, как я могу передать только 6 fields
в приведенном ниже коде без повторения?
Контроллер
if ($teacher->isDirty('field1')) {
$new_data = $teacher->field1;
$old_data = $teacher->getOriginal('field1');
DB::table('teacher_logs')->insert(
[
'user_id' => $user->id,
'teacher_id' => $teacher->id,
'old_value' => $old_data,
'new_value' => $new_data,
'column_changed' => "First Name",
]);
}