我想为我的报告上传一个徽标。
这是我的uploadLogo
函数的一个片段
$file = $request->file;
Storage::disk('logo')->put('logo.png', $file);
我在filesystems.php
中创建了一个logo
配置文件,如下所示。
'logo' => [
'driver' => 'local',
'root' => public_path() . '/img',
'url' => env('APP_URL').'/public',
'visibility' => 'public',
],
但它最终在一个"随机"(或被误解(的位置创建了一个随机名称的文件。
publicimglogo.pngM4FGLpZzAsyxn8NHiJLxo95EoP7I3CkIWvqkiQsv.png
我在这里的设置中缺少什么?
您可以直接存储请求的文件(UploadedFile(对象的文件。并使用storeAs
按您提供的名称进行保存。Storage::put
和UploadedFile::store`方法为要存储的文件生成随机名称。
$path = $request->file->storeAs('img', 'logo.png', 'logo');
更多信息https://laravel.com/docs/8.x/filesystem#storing-文件和https://laravel.com/docs/8.x/requests#storing-上传文件