Używam Laravel 5.3
i próbuję uzyskać uwierzytelnione użytkownika id
w metodzie constructor
więc mogę filtrować przez użytkownika przypisany firmie w następujący sposób:laravel 5,3 auth zameldowanie konstruktora powrocie fałszywe
namespace App\Http\Controllers;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Support\Facades\View;
use App\Models\User;
use App\Models\Company;
use Illuminate\Support\Facades\Auth;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests ;
public $user;
public $company;
public function __construct()
{
$companies = Company::pluck('name', 'id');
$companies->prepend('Please select');
view()->share('companies', $companies);
$this->user = User::with('profile')->where('id', \Auth::id())->first();
if(isset($this->user->company_id)){
$this->company = Company::find($this->user->company_id);
if (!isset($this->company)) {
$this->company = new Company();
}
view()->share('company', $this->company);
view()->share('user', $this->user);
}
}
Jednak to nie zwraca użytkownika id
. Próbowałem nawet Auth::check()
i to nie działa.
Gdybym przesunąć Auth::check()
z metodą __construct()
wtedy działa w następujący sposób:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HomeController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
dd(\Auth::check());
return view('home');
}
}
Jednak to nie jeśli kładę to w metodzie konstruktu w HomeController
też!
Jakieś pomysły, dlaczego to się nie udaje?
To nie działa dla mnie LR5.3.10 –
działa dla mnie LR 5.3.10 i 5.3.16 bez problemu –
@ ABDEL-RHMAN moje jest 5.3.4 i nie może wiesz, jak uaktualnić do swojej wersji? –