【问题标题】:Laravel Driver [] is not supported不支持 Laravel 驱动程序 []
【发布时间】:2017-12-01 15:34:02
【问题描述】:

文件系统:

'disks' => [

        'local' => [
            'driver' => 'local',
            'root' => storage_path('app'),
        ],

        'public' => [
            'driver' => 'local',
            'root' => storage_path('app/public'),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

        'shares' => [
            'driver' => 'local',
            'root' => public_path('shares'),
            'visibility' => 'public',
        ],

        's3' => [
            'driver' => 's3',
            'key' => env('AWS_KEY'),
            'secret' => env('AWS_SECRET'),
            'region' => env('AWS_REGION'),
            'bucket' => env('AWS_BUCKET'),
        ],

    ],

我的控制器:

public function store(Request $request) {
        $rules = [
            'user_id'           => 'required|exists:users,id',
            'patient_case_id'   => 'required|exists:patient_cases,id',
            'shared_with'       => 'required|exists:users,id',
        ];

        $this->validate($request, $rules);

        $data = $request->all();
        $data['shared_file'] = $request->file('file')->store('shares/'.$data["user_id"], $data["shared_file"]->getClientOriginalName());

        $newShare = WayneRooney::create($data);
        return $this->showOne($newShare, 201);
    }

如果我将 store 方法留空,它会工作并将文件写入公共路径的共享文件夹中,并具有唯一的 ID。但我想在 share/{USER_ID} 文件夹下使用原始名称写入文件。

我该怎么做?

【问题讨论】:

  • 您的意思是使用storeAs(...) 而不是store(...)?你使用的是哪个版本的 Laravel?
  • @sisve 是的,我找到了 :) 谢谢 sisve。如果你愿意,你可以写成答案
  • 试试putFileAsstoreAs()?

标签: php laravel


【解决方案1】:

如果您不希望文件名自动分配给您存储的文件,您可以使用storeAs 方法,该方法接收路径、文件名和(可选)磁盘作为参数:

$path = $request->file('avatar')->storeAs(
     'avatars', $request->user()->id
);

您也可以在 Storage 门面上使用 putFileAs 方法,该方法将执行与上面示例相同的文件操作:

$path = Storage::putFileAs(
     'avatars', $request->file('avatar'), $request->user()->id
);

希望这能解决您的问题!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 2016-09-09
    • 2018-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多