首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CKFinder3动态更改文件夹路径

CKFinder3动态更改文件夹路径
EN

Stack Overflow用户
提问于 2018-03-22 15:11:52
回答 2查看 1.1K关注 0票数 1

是否需要动态地更改baseUrl of CKFinder?

我需要使用这样的路径:/websitebuilder/www/user_images/$id/。我用谷歌找到了一些答案,但我没能成功。

有人能给我一点提示吗?我该怎么做?

我知道,在config.php中,您更改了baseUrl param,但是如何才能使其简单明了呢?

EN

回答 2

Stack Overflow用户

发布于 2018-03-28 08:56:57

嗨,您可以使用每个实例CKFinder 3的不同文件夹的示例。

基本上,您应该将config.php更新为如下所示:

代码语言:javascript
复制
$id = getID();

$config['backends'][] = array(
    'name'    => 'default',
    'adapter' => 'local',
    'baseUrl' => 'http://example.com/ckfinder/userfiles/' . $id,
    'root'    => '/path/to/ckfinder/userfiles/' . $id
);
票数 1
EN

Stack Overflow用户

发布于 2021-08-03 11:50:43

1创建新的中间件:

php :中间件DynamicCkfinderConfig

在handel函数中使用这个代码:不要忘记在文件的顶部使用Auth;

代码语言:javascript
复制
public function handle(Request $request, Closure $next)
{
    if (auth()->check()) {

            config([
                'ckfinder.backends.default' => [
                    'name' => 'default',
                    'adapter' => 'local',
                    'baseUrl' => '/user-' . md5(Auth::user()->id) . '/',
                    'root' => public_path('/user-' . md5(Auth::user()->id) . '/'),
                    'chmodFiles' => 0777,
                    'chmodFolders' => 0755,
                    'filesystemEncoding' => 'UTF-8'
                ]
            ]);
        
    }
    return $next($request);
}

2在kernel.php文件中添加中间件

代码语言:javascript
复制
protected $routeMiddleware = [
        'ckfinderConfig' => \App\Http\Middleware\DynamicCkfinderConfig::class,
    ];

3在ckfinder连接器路由中使用中间件。

代码语言:javascript
复制
Route::any('/ckfinder/connector', [CKFinderController::class, 'requestAction'])
    ->name('ckfinder_connector')->middleware(['ckfinderConfig']);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49432207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档