【发布时间】:2017-05-20 18:11:42
【问题描述】:
我正在使用 laravel 5.3 并使用 Multi-Auth Hesto 包。 我使用视图作曲家将我当前的 Auth::user 传递给 Welcome.blade
我已经登录了我的 Customer/Home.blade,但是当我转到 Welcome.blade 并访问当前的 Auth::useran 错误时显示“尝试获取非对象的属性”
这是我的 Viewmcomposers/AuthComposer.php
class AuthComposer
{
public $currentUser;
public function __construct()
{
$this->currentUser = Auth::User();
View::share([ 'currentUser' => $this->currentUser ]);
}
public function compose(View $view)
{
$view->with('currentUser', Auth::user()->name);
}
}
App/Providers/ComposerServiceProvider.php
public function boot()
{
view()->composer('welcome', function ($view)
{
$currentUser = Customer::where('name', Auth::user()->name);
$view->with('welcome', $currentUser );
});
}
配置/App.php
App\Providers\ComposerServiceProvider::class,
我的客户路线
Route::get('/home', function () {
$users[] = Auth::user();
$users[] = Auth::guard()->user();
$users[] = Auth::guard('customer')->user();
return view('customer.home');
})->name('home');
我只是在我的 routes/web.php 中为我的welcome.blade 调用它
Route::get('/', 'WelcomeController@showWelcome');
【问题讨论】:
-
任何堆栈跟踪 - laravel 出错时显示的那堆函数调用?
-
我更新了我的问题,我的第 18 行将是这个 $view->with('currentUser', Auth::user()->name);但是当我删除 ->name 时,它什么也没有显示。 Welcome.blade 视我为客人
-
好吧,尝试将
dd(Auth::user())放在ComposerServiceProvider.php中的第18 行之前,我想知道用户是否真的从未经过身份验证并且Auth::user()返回null。 -
它返回'null'
-
呃,好吧,你是如何处理用户登录的?
标签: laravel laravel-5.3