Файловый менеджер Laravel Dynamic base_directory

Я использую Unisharp’s файловый менеджер laravel. это прекрасно работает, и я влюблен в его гибкость.

Однако мне нужно, чтобы пользователи хранили свои файлы в соответствующих папках. я могу сделать это, изменив user_field в файле конф.
Что я не могу сделать, так это дать доступ супер администратору, чтобы он мог видеть все файлы других пользователей!
я почти отказываюсь пытаться понять это в течение нескольких дней.

вот что я пробовал до сих пор:

в config / lfm.php

'base_directory'=>Unisharp\Laravelfilemanager\Handlers\ConfigHandler::class`,

И в обработчике:

namespace Unisharp\Laravelfilemanager\Handlers;
class ConfigHandler
{
public function userField()
{
return auth()->user()->name;
}

public function baseDirectory(){
if(auth()->user()->user_type !== "S"){
return 'storage/'.auth()->user()->name;
}
else{
return 'storage/';
}
}
}

Но приведенный выше код показывает пустую страницу, и в Abyss создаются папки, которые я не могу найти нигде на моей машине.

Любая помощь будет оценена.

Заранее спасибо.

2

Решение

У меня такая же проблема. Мне удалось это исправить, изменив саму функцию userField:

public function userField()
{
$role = function_to_get_role();

if($role == 'Admin'){
return 'folder_1';
}else{
return 'folder_1/' . auth()->user()->name;
}
}

Я тоже пытался изменить функцию baseDirectory, но безуспешно.

6

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]