我正在尝试更新数据库中的图像。我正在使用laravel 5.4版本。 我收到了这个错误。
类型错误:传递给Illuminate \ Database \ Eloquent \ Builder :: make()的参数1必须是类型数组,给定对象,在C:\ xampp \ htdocs \ laravel_eshopper \ vendor \ laravel \中调用第1357行的framework \ src \ Illuminate \ Database \ Eloquent \ Model.php
答案 0 :(得分:3)
如果使用http://image.intervention.io/
将Product::make($image)
更改为Image::make($image)
答案 1 :(得分:0)
好的,我知道这个问题。 首先,最佳做法是不保存数据库中的图像只保存保存图像的路径。
我在这里给你举例:
if ($request->hasFile('image')) {
$image = $request->file('image');
$filename = time() . '.' . $image->getClientOriginalExtension();
$location = public_path('images/home/');
// now saving the file
$image->move($location, $filename);
// delete oldfile
$oldFilaname = $product->image;
Storage::delete($oldFilename);
// update
$product->image = $location . '/' . $filename;
}