В Laravel для проверки изменения поля в запросах вы можете использовать условие $request->isDirty('field_name')
.
Метод isDirty
возвращает true
, если значение поля было изменено после загрузки модели или false
, если оно осталось неизменным. Вы можете передать имя поля как аргумент в метод isDirty
, чтобы проверить только это поле.
Пример использования метода isDirty
в контроллере Laravel:
public function update(Request $request, $id) { $model = YourModel::findOrFail($id); if ($request->isDirty('field_name')) { // Логика, которая будет выполнена только в случае изменения поля $new_value = $request->input('field_name'); $model->field_name = $new_value; $model->save(); } // Остальная логика обновления модели... return redirect()->back()->with('success', 'Модель обновлена успешно.'); }
В этом примере, перед тем как вы сохраните модель, вы проверяете, было ли изменено поле field_name
в запросе. Если да, то вы выполняете определенную логику для обработки этого изменения, например, сохраняете новое значение поля в модели. Если нет, то продолжаете с остальной логикой обновления модели.
Метод isDirty
особенно полезен, когда у вас есть большой объект запроса с множеством полей, и вы хотите проверить только определенное поле на изменения.