storage/app/publicに画像は保存されるのですが、DBの画像名(product_image)が/Applications/MAMP/tmp/php/(ファイル名?)となりブラウザ上で表示ができません。
if文でファイル名を変えているのですが、そのあとのコードの記述の仕方がわからないので教えていただければと思います。
public function exeStore(ProductRequest $request) { $inputs = $request->all(); $image = $request->file('product_image'); // 画像がアップロードされていれば、storageに保存 if($request->hasFile('product_image')){ $path = \Storage::put('/public', $image); $path = explode('/', $path); }else{ $path = null; } ----------↓(過去のコードでは$inputsのみ保存されるので$pathもデータベースに保存できるコード記述したい)------------- \DB::beginTransaction(); try { Product::create($inputs); ←() \DB::commit(); } catch(\Throwable $e) { \DB::rollback(); abort(500); } ----------------------------------------------------------------- \Session::flash('err_msg','商品を登録しました。'); return redirect(route('home')); }
回答1件
あなたの回答
tips
プレビュー