Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Доброго времени суток!
Файловый менеджер unisharp.github.io/laravel-filemanager для сайта какой-то багнутый....
Сначала composer закачал не все файлы, пришлось доливать руками...
Теперь не могу получить экземпляр пользователя для многопользовательского использования этого чуда мысли...
config/lfm.php
...
'user_folder_name' => UniSharp\LaravelFilemanager\Handlers\ConfigHandler::class,
...
UniSharp\LaravelFilemanager\Handlers\ConfigHandler
<?php
namespace UniSharp\LaravelFilemanager\Handlers;
class ConfigHandler
{
public function userField()
{
return auth()->user()->id;
}
}
Дает ErrorException (E_NOTICE) Trying to get property of non-object
Попытка переопределить класс ни к чему не приводит, например:
config/lfm.php
'user_folder_name' => App\Handlers\LfmConfigHandler::class,
App\Handlers\LfmConfigHandler
<?php
namespace App\Handlers;
use Auth;
class LfmConfigHandler extends \UniSharp\LaravelFilemanager\Handlers\ConfigHandler
{
public function userField()
{
if (Auth::check())
{
if(Auth::user()->role === 'Admin'){
return '/';
}else{
return '/' . auth()->id();
}
}else{
return null;
}
}
}
Возвращает null.... хотя запрос идет из авторизованной зоны
Изменено Dzhangar (04.12.2018 13:16:30)
Не в сети
:-) я сам дурак
Возвращает null.... хотя запрос идет из авторизованной зоны
Все дело в неправильно расположенных роутах. Хоть lfm и имеет
Route::group(['prefix' => 'laravel-filemanager', 'middleware' => ['web', 'auth']], function () {
\UniSharp\LaravelFilemanager\Lfm::routes();
});
все равно надо чтобы запрос был из Auth-зоны, например, со страницы home-зоны
Route::group(['prefix' => 'home', 'middleware' => ['web', 'auth']], function () {
Route::get('/', 'HomeController@index')->name('home');
include 'home.php';
});
Не в сети