我正在使用Laravel 5.7进行一个项目,我正在尝试在有活动会话时重定向到一个路由。目前我已尝试将此代码置于我的视图顶部,但它似乎似乎不起作用。
@php
if(!empty(Auth::user())) {
header('Location: '.route('dashboard'));
}
@endphp
我的代码有错误吗?还是有其他办法去做我正在尝试的事情吗?提前致谢!
您无需在视图文件中进行重定向,您可以在路径文件中使用auth中间件,如下所示
<?php
//route which don't required login session
Route::group(['middleware'=>'auth'],function(){
//list of routes which you need to access after login
});
?>
您不需要在上述范围之外编写的登录会话的路由
为什么要在视图中检查类似的东西,你应该在返回视图之前在控制器中检查它。
无论如何,这里是你可以在你的刀片模板中使用的
@if(Auth::user())
<script>window.location = "/dashboard";</script>
@else
<script>window.location = "/login";</script>
@endif
并记住,如果auth :: user为空,表示用户未注册,但您也可以使用Auth :: guest()进行检查,这意味着用户尚未注册。
希望能帮助到你。