因此,我嘗試使用Input進行文件上傳,但很失敗。我試圖用Request
做到這一點,但我得到了如下錯誤:Laravel - 從請求中上傳多個文件並將它們移動到一個文件夾中
Call to a member function move() on string
刀片:
<input type="file" name="productImage[]" id="" multiple>
控制器:
public function addProduct(Request $request)
{
$this->validate($request, [
'title' => 'required',
'description' => 'required',
'details' => 'required',
'price' => 'required',
'subcategory' => 'required',
'color' => 'min:1',
'size' => 'min:1',
'productImage' => 'min:1'
]);
$product = new Product();
$product->subcategory_id = $request['subcategory'];
$product->gender_id = $request['gender'];
$product->title = $request['title'];
$product->description = $request['description'];
$product->details = $request['details'];
$product->price = $request['price'];
$product->save();
foreach ($request['color'] as $color_id) {
$color = Color::find($color_id);
$product->colors()->save($color);
}
foreach ($request['size'] as $size_id) {
$size = Size::find($size_id);
$product->sizes()->save($size);
}
foreach ($request->file('productImage') as $productImage) {
$file = $productImage;
$file->move('images', $file->getClientOriginalName());
$image = new Image();
$image->product_id = $product->id;
$image->path = $file->getClientOriginalName();
$product->images()->save($image);
}
return redirect()->route('admin.products')->with(['added' => 'Продукт добавен успешно!']);
}
我需要讓我的文件和他們的名字,並將其上傳到我的圖片文件夾。
我試過這個解決方案。我得到了爲foreach()提供的無效參數 - – Codearts
向我們顯示您的控制器代碼。你可能在那裏犯了一些錯誤。 –
我編輯了我的問題。你可以在那裏看到我的控制器。 – Codearts