Larvel 5.0をDatabaseトランザクションで使用しました。これまでのWebアプリケーションのすべてのメソッドも同様に動作しました。このアプリケーションは、私たちの予測よりもはるかに役立ちますので、本当に大好きですLaravel 5.3019データベーストランザクションメソッドは機能しますか?
別のWebアプリケーションこのフレームワークのこの最新バージョンを使用して同じデータベース構造を使用していましたが、最終的に私と他のデータベース構造にはうまくいかないでしょう。 私はもっと多くの人々といくつかのトゥルーリアーのウェブサイトに投稿して、どんな解決策も求めていないが、まだ解決策を得ていないので、このビデオをこのケースについて確かに記録する。
問題:私の問題すべてのデータをデータベースに挿入できる方法を無効にしました(コミット())。
final function Add()
{
if ($this->request->isMethod('post')) {
//No you will see this method use with Try Catch and testing again
//DB::beginTransaction(); // Ihave testing with outside of try and inside again
Try{
DB::beginTransaction();
$cats = new Cat();
$catD = new CategoryDescriptions();
$cats->parent_id = $this->request->input('category_id');
$cats->status = ($this->request->input('status')) ? $this->request->input('status') : 0;
if (($res['result'] = $cats->save())== true) {
$catD->category_id = $cats->id;
$catD->language_id = 1;
$catD->name = $this->request->input('en_name');
if (($res['result'] = $catD->save()) === true) {
$catD2 = new CategoryDescriptions();
$catD2->category_id = $cats->id;
$catD2->language_id = 2;
$catD2->name = $this->request->input('kh_name');
$res['result'] = $catD2->save();
}
}
if(!empty($res)) {
//DB::commit();
}
return [$res,($res['result'] = $catD->save())];
}catch(\Exception $e){ // I have already try to use Exception $e without backslash
DB::rollback();
}
}
$cat = Cat::with(['CategoryDescriptions', 'children'])->where('status', 1)->get();
return view('admin.categories.add', ['cat' => $cat]);
}
私のビデオで確認することができます。
問題は何ですか? 「それは私にとってはうまくいかない」という答えは本当にありませんし、あなたのビデオはあまり言いません。 – apokryfos
データベースにデータを挿入しない目的でcommit()メソッドを無効にしたため、すべてのコード行が表示されるかどうかを理解する必要があります。 –
コミットしないと、データは保存されません。データが保存されているという問題はありますか? – apokryfos