我试图在默认的app.blade.php
文件中隐藏侧边栏,而无需创建新的布局文件。
如果请求或路由是Auth::routes()
创建的请求或路由的一部分,我试图添加if语句以隐藏侧边栏
我知道我可以列出一堆Request::is('login')
和Request::is('register')
等...
我只是想知道是否有一个简单的catch all来检查请求是否是与auth相关的任何页面。
谢谢!
答案 0 :(得分:1)
一种方法是偷偷摸摸地使用actions
数组作为Route。在定义组时,这些属性将与Route的属性合并。
使用authroutes
(或您想要的任何其他名称)属性设置组:
Route::group(['authroutes' => true, ....], function () {
Auth::routes(...);
});
在视图中,您可以检查当前路线以查看其是否具有此authroutes
动作属性:
@if (Request::route()->getAction('authroutes', false))
// this is one of the routes from `Route::auth`
@endif
getAction
带有我们要查找的属性和默认值。
答案 1 :(得分:0)
您可以创建一个帮助程序功能来检查身份验证路由。
function checkAuthRoute() {
$routes = \Route::getRoutes();
// iterate routes
foreach($routes as $route){
// your logic here
}
}
答案 2 :(得分:0)
检查当前路线名称是否在所需列表内。
@if (in_array(request()->route()->getName(), ['login', 'register']))
// Request is in Auth Routes
@else
// Request not in Auth Routes
@endif