如何使用 Laravel 媒体库将文件保存在特定文件夹中?

问题描述 投票:0回答:1

我目前正在做一个项目,我在使用 Laravel 的媒体库图像保存功能时遇到了问题。当我保存文件时,它会保存在以数字命名的文件夹中。

当我在代码中使用

toMediaCollection('avatars')
时,我希望将文件保存在特定文件夹中。这是相关的代码片段:

// Avatar image
if(!is_null($request->hasFile('avatar')))
   $user->addMediaFromRequest('avatar')->toMediaCollection('avatars');

如何修改此设置,以便在保存文件时将其保存在“avatars”文件夹中,而不是保存在以数字命名的文件夹中?任何帮助将不胜感激。

php laravel laravel-10 laravel-medialibrary
1个回答
0
投票

要在使用 Laravel 媒体库时指定保存文件的特定文件夹,可以使用 toMediaCollection 方法以及 ->useDisk('public')->toMediaFolder('avatars') 方法。您可以通过以下方式修改代码片段来实现此目的:

// Avatar image
if ($request->hasFile('avatar')) {
    $user->addMediaFromRequest('avatar')
         ->toMediaCollection('avatars')
         ->useDisk('public')
         ->toMediaFolder('avatars');
}

此代码会将头像图像保存在存储目录中的“avatars”文件夹中。确保您已在 config/filesystems.php 文件中正确设置文件系统,尤其是“公共”磁盘,以确保正确保存和检索文件。

© www.soinside.com 2019 - 2024. All rights reserved.