1
我使用Laravel 5.4和我有一個存儲圖像在項目的公共文件夾,然後保存它的路徑插入數據庫項目列一個註冊方法,它現在的工作對:更新圖像路徑存儲laravel
public function salvar(Request $request){
if ($request->hasFile('image')){
$product = new Product();
$id = Produto::max('id')+1;
$file = request()->file('image');
$directoryImg = $file->storeAs('images/'. $id , 'image.jpg');
$produto->description= $request->description;
$produto->cathegory = $request->cathegory;
$produto->price = $request->price;
$produto->image = $directoryImg;
$produto->save();
}
else{
$product = new Product();
$product = $product->create($request->all());
}
\Session::flash('mensage_success', 'Done!');
return Redirect::to('products/new');
}
問題是,當我使用另一種方法更新項目寄存器時,我更改的所有信息都會轉到數據庫,除了未存儲在路徑中的圖像和數據庫中的路徑本身之外。該字段在執行方法前保留其具有的值:
public function update($id, Request $request){
$productEdit = Product::find($id);
if ($request->hasFile('image')){
$file = request()->file('image');
$directoryImg = $file->storeAs('images/' . $productEdit->id , 'image.jpg');
$productEdit->image = $directoryImg;
$productEdit->description = $request->description;
$productEdit->cathegory = $request->cathegory;
$productEdit->price = $request->price;
$productEdit->save();
}
}
return Redirect::to('products/');
有人可以幫我找到我在這裏丟失的東西嗎?
$ productEdit->保存(),而不是$ produto –
的$ produto保存()僅僅是一個拼寫錯誤。在原來的代碼中它已經是$ productEdit-> save()。大聲笑 –
[編輯]有更多最新代碼的問題。 –