受保护的函数create(array $ data) {$ request = request();
$profileImage = $request->file('image');
$profileImageSaveAsName = time(). "." . $profileImage->getClientOriginalExtension();
$profileImage->move('img', $profileImageSaveAsName);
$user=new User;
return $user->create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
'image' => $profileImageSaveAsName,
]);
}
答案 0 :(得分:1)
确保您拥有<form enctype="multipart/form-data">
。
另外,在保存图像时,您的工作有些复杂。 (实际上,我认为您应该存储在storage/app/public/images
中而不是public/images
中)
$profileImage = $request->file('image');
$fileName = time() . Auth::id() . "-profile." . $profileImage->getClientOriginalExtension();
$path = $profileImage->storeAs('public/images', $fileName);
为此,请确保您运行symlink命令:php artisan storage:link
答案 1 :(得分:0)
您首先以表格<form enctype="multipart/form-data">
添加的支票
第二,您无法获得Auth::id()
,
由于未注册用户,因此不会创建会话,那么如何从Auth获取ID。
您还可以通过转储检查并dd(Auth::id)
消亡,它将给出空值。
关于验证。
我猜您忘记了<form enctype="multipart/form-data">
的位置,并且还检查了验证器中输入字段的名称是否相同。