Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 04.12.2018 13:15:31

Не могу получить Auth::user в unisharp.github.io/laravel-filemanager

Доброго времени суток!

Файловый менеджер 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)

Не в сети

#2 06.12.2018 10:17:05

Re: Не могу получить Auth::user в unisharp.github.io/laravel-filemanager

:-) я сам дурак

Возвращает 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';
 });

Не в сети

Подвал раздела