Laravel транзакция не работает при попытке сохранить 2 новых элемента в контроллере - PullRequest
0 голосов
/ 08 марта 2020

Я пытаюсь создать 2 записи в базе данных в 2 таблицах. Во 2-й таблице есть несколько триггеров. Я использую транзакцию для управления двумя запросами, но когда второй запрос является ошибкой, первый запрос все еще работает и сохраняется в базе данных. Пожалуйста, помогите мне, я пытаюсь узнать Laravel 6.x. Я использую только одну базу данных

public function store(Request $request)
{
     DB::beginTransaction();

     try{
     $product= new Product;
      //...//
     $product->save(); // This query still work, save to database and doesn't rollback

     $ticket = new Ticket;
     //...//
     $ticket->save(); // This query is error

     DB::commit();
}catch (\Illuminate\Database\QueryException  $e) {
    DB::rollBack();
    return back()->with('error',$e->getMessage());
}

}

Я уверен, что это ловит исключение! Сообщение об ошибке отображается, но откат () не работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...