, поэтому у меня возникла проблема, так как в моей функции хранилища на моем контроллере я делаю 2 (или более) создания, а второе создание зависит от первого идентификатора создания, и когда мое второе создание не удалось, оно выдаст исключение, но первое создание ужебыло сделано, и поскольку мое первое создание имеет уникальные правила проверки, при следующем нажатии пользователем кнопки «Сохранить» на передней панели будет отображаться ошибка из-за дублирования записи.
это выглядит так в моем контроллере
public function store(Request $request)
{
try{
$this->validate($request,Seller::$rules);
$name = $request->name;
if(!empty($request->gambar))
$fileName = Helper::image_processing($this->imagepath,$this->width,$this->height,$request,'');
else
$fileName = '';
// my first create
$class = Seller::create($request->except('gambar') + [
'gambar' => $fileName
]);
// my second create that depends on first create id
$this->syncProduct($request, $class->id);
return response()
->json([
'saved' => true,
'message' => $this->message. ' ' .$name. ' already been added',
'id' => $class->id
]);
} catch (\Exception $e){
$errorCode = $e->errorInfo[1];
if($errorCode == 1062){
abort(500, 'Duplicate seller id');
}else{
abort(500, $e->getMessage());
}
}
}
У меня вопрос, как получить какие-то функции отката, которые, если что-то пойдет не так, будут возвращаться во времени, прежде чем какие-либо данные будут созданы / обновлены?