Я использую 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 создаются папки, которые я не могу найти нигде на моей машине.
Любая помощь будет оценена.
Заранее спасибо.
У меня такая же проблема. Мне удалось это исправить, изменив саму функцию userField:
public function userField()
{
$role = function_to_get_role();
if($role == 'Admin'){
return 'folder_1';
}else{
return 'folder_1/' . auth()->user()->name;
}
}
Я тоже пытался изменить функцию baseDirectory, но безуспешно.
Других решений пока нет …