crudbooster,如何将 laravel 中的存储路径更改为 public?

crudbooster, How to change storage path in laravel to public?

我在 laravel 5.4 中使用 crudbooster 管理生成器,如果我从表单上传文件,它将存储在自己的存储目录中。然后我应该在 public 路径中创建指向该存储路径的符号链接。

由于限制,我无法在我的系统上创建符号链接。如何将文件直接上传到 public/uploads 而不是 storage/app/uploads?

老实说,我不知道。我能做的就是为您指明正确的方向。 Crudbooster 依赖于一个名为 UniShard/laravel-filemanager 的包。我正在查看这个包的配置文件,它与配置文件夹中的 lfm.php 类似,只是有更多选项。也许您可以使用这些附加选项之一,例如 base_directory。不确定这将如何解决,它可能只是编码不当。

原答案:

您需要创建一个新磁盘。

在config\filesystems.php中添加这个。

'disks' => [
    'uploads' => [
        'driver' => 'local',
        'root' => public_path() . '/uploads'
    ],
],

现在,当你想使用存储外观时,你可以这样做:

Storage::disk('uploads');

用法示例:

Storage::disk('uploads')->put('filename', $file_content);

希望这对您有所帮助。

我们可以在

中更改它

vendor/crocodicstudio/crudbooster/src/controllers/cbcontroller.php行:1010