@ettychel

Почему в __construct перестал определятся аутентифицированный пользователь?

Сделал приватную переменную, определил в конструкторе значение, сначала работало, потом ни с того ни с сего перестало, может что то не так написал?
Причем если в методе прописываю чему равно, то всё прекрасно работает

class PostController extends BaseController{
    private $auth;
    
    public function __construct()    {
        parent::__construct();

        $this->auth = Auth::user();
}

public function index()    {
        // $this->auth = Auth::user();
        dd($this->auth);


в dd null
снимаю коммент и всё прекрасно, пользователь есть
  • Вопрос задан
  • 152 просмотра
Решения вопроса 1
@ettychel Автор вопроса
Решил таким способом

В контроллере от которого наследуется PostController контроллер добавил

use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;

abstract class BaseController extends Controller
{
    public function authUser()
    {
        return Auth::user();
    }
}


потом можно вызывать $this->authUser() со всеми вытекающими
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
JhaoDa
@JhaoDa
LaravelRUS Team
Вангую, что ты обновился, а руководство по обновлению читать не стал. Раздел «Session In The Constructor» — https://laravel.com/docs/5.3/upgrade
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы