这里是laravel的新手。 我试图在模型和项目文件夹中保存图像。看起来它只保存在文件夹中,但在Macroable.php第74行返回 BadMethodCallException:方法保存不存在。 每当我将它保存到数据库。非常感谢任何帮助!
public function itemPicture(Request $request)
{
if($request->hasFile('itemPic'))
{
$bfItemPic = $request->file('itemPic');
$filename = /*time() . '.' . */ $bfItemPic->getClientOriginalName();
Image::make($bfItemPic)->resize(250,250)->save( public_path('/itempictures/' .$filename));
//bufashItems::create($request->all());
$bfproducts = bufashItems::all();
$bfproducts->item_picture = $filename;
$bfproducts->save();
}
return redirect('/Items');
}
答案 0 :(得分:1)
您收到此错误是因为您尝试在集合上使用save()
方法。你应该得到一个使它工作的对象,例如:
$bfproducts = bufashItems::where('id', 5)->first();
$bfproducts->item_picture = $filename;
$bfproducts->save();
答案 1 :(得分:0)
您正试图在那里保存一个集合,并且集合中不存在方法调用,这就是它抛出错误的原因。
如果您要创建新记录,请尝试以下操作:
$bfproducts = new bufashItems();
$bfproducts->item_picture = $filename;
$bfproducts->save();
确保在bhfashItems类上正确设置了可填写字段。
答案 2 :(得分:0)
bufashItems :: all(),这是您可以检索数据的雄辩。 你必须这样做:
$bfproducts = new bufashItems();
$bfproducts->item_picture = $filename;
$bfproducts->save();