版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33867131/article/details/86139716
public function store(Request $request){
$path = null;
if($request->hasFile('thumbnail')){
// 获取上传的文件
$thumb = $request->thumbnail;
// 拼接文件名($thumb->extension()获取上传文件的后缀)
//$name = str_random(40).'.'.$thumb->extension();
$name = $thumb->hashName(); // 和上面生成文件名的原理类似
// 存储上传文件(存储目录storage/public/thumbs/,返回值$path是文件存储的目录,
// 存数据库的时候可以存这个地址)
$path = $request->thumbnail->storeAs('public/thumbs', $name);
// 如果你想上传的文件能够通过浏览器被访问到,需要执行命令:php artisan
storage:link,
// 这样storage/public目录就能被访问到了,你的文件也要存储到storage/public下
}
// 通过projects()关系,储存数据,不用再单独存user_id字段,已经自动存储了
$request->user()->projects()->create([
'name'=> $request->name,
'thumbnail'=> $path
]);
return '成功';
}