В Laravel -5.8 Я применил Правила запроса для нескольких полей, как показано ниже:
public function rules()
{
return [
'goal_type_id' => [
'required',
Rule::unique('appraisal_goals')->where(function ($query) {
return $query
->where('employee_id', 1)
->where('appraisal_identity_id', 1);
})
],
'appraisal_doc' => 'nullable|mimes:doc,docx,xls,xlsx,ppt,pptx,pdf,jpg,jpeg,bmp,png,|max:5000',
'weighted_score' => 'required|numeric|min:0|max:500',
];
}
Это mysql запрос:
ALTER TABLE appraisal_goals
ADD CONSTRAINT appraisal_goals_uniq1 UNIQUE KEY(goal_type_id,appraisal_identity_id,employee_id);
Это предназначено для создания , Из кода комбинация goal_type_id, employee_id и appraisal_identity_id является уникальной.
Когда я нажимаю на "Отправить" в Create Blade, он разрешает дублирование.
Как мне решить эту проблему?
Также как мне написать один для обновления?
Обратите внимание, что мой маршрут appraisal_goal
Спасибо