【发布时间】:2021-08-03 06:18:34
【问题描述】:
我已经创建了一个自定义磁盘,例如
'custom-ftp' => [
'driver' => 'ftp',
'host' => 'imn.tra.de',
'username' => '',
'password' => '',
'port' => 21,
'ssl' => true,
],
但我希望数据库中的每个用户都设置用户名和密码并相应地调用磁盘,
现在我正在做的是在将文件上传到 ftp 之前,我正在做
$user = Auth::user();
$setting = $user->setting;
Config::set('filesystems.disk.custom-ftp.username', $setting->user_name);
Config::set('filesystems.disk.custom-ftp.password', $setting->password);
后来
Storage::disk('custom-ftp')->put($file, $localFile);
但我得到了 像这样:无法使用连接登录:imn.tra.de::21,用户名:因为这仍在从配置中选择用户名,它是空的
【问题讨论】:
-
您可以将设置字段添加到用户表并从仪表板进行设置,或者您可以使用一些设置包。哪里有适合你的教程laracasts.com/lessons/managing-mass-user-settings
-
在将文件上传到 ftp 之前,我已经在数据库中保存设置并更新配置文件,请查看我编辑的问题
-
你的方法有什么问题?它不工作?
-
配置文件用于静态设置。动态设置不应该以这种方式放入配置中
-
您可以在运行时通过传递键/值对数组来设置配置变量。但是请注意,此函数仅影响当前请求的配置值,不会更新您的实际配置值: config(['app.debug' => true]); (laravel.com/docs/master/helpers#method-config)
标签: laravel