0
DBからファイルを更新して3つのテーブルに挿入しています。エラーがスローされなかった場合、すべてがOKになったかどうかをチェックして、アップロードが正常に行われた場合にユーザーに成功メッセージを表示できるようにしたいと思います。どうやってやるの?Laravel 5.4 - モデルの挿入と更新がすべて正常に行われたかどうかを確認します
これは私のコードです:
public function upload(Request $request)
{
if ($request->hasFile('csvFile')) {
$file = $request->file('csvFile');
$file->move('uploads', $file->getClientOriginalName());
$this->store($file);
}
Session::flash('flash_message','File was successfully uploaded.');
return view('home');
}
public function store($file)
{
$path = base_path('public/uploads/' .$file->getClientOriginalName());
$rows = Excel::load($path, function($reader) { })->get()->toArray();
foreach($rows as $row) {
$id = $row[4];
$shopeTitle = $row[1];
$price = $row[6];
$mall = $row[5];
$visitors = $row[3];
Shop::updateOrCreate(
['id' => $id],
['title' => $shopeTitle]
);
Mall::where('id', $id)->update([
'price' => $price,
'visitors' => $visitors
]);
if ($mall != 41 || $mall!= 42) {
DB::table('store_mall')->insert([
'mall' => $price,
'store' => $id
]);
}
}
}