【问题标题】:How to inspect the current Named Route using Laravel 5.2如何使用 Laravel 5.2 检查当前的命名路由
【发布时间】:2018-03-08 04:36:15
【问题描述】:

根据Laravel 5.5 docs,有一个named()访问路由名称的方法:

if ($request->route()->named('profile')) {
    //
}

检查源代码,我了解到这个named 方法只是获取动作对象的'as' 属性:

$this->action['as'] 

我的问题是我无法使用 Laravel 5.2,它没有 named() 方法。我不能在刀片模板中使用route()->action['as'],因为actionobject 受到保护。 5.2中是否有等效的getter方法来检查当前路由的名称?我想在我的 Blade.php 文件中进行流控制,如下所示:

@if(route()->action['as'] == 'blog.edit')
    //
@endif

也许我错过了,但我在 Laravel 5.2 文档中没有看到任何内容:https://laravel.com/docs/5.2/routing#named-routes

我成功地检查了路线使用

@if(request()->is('blog/add'))
    //
@endif

但那是使用路由 URI。我更喜欢使用路由名称,因为它不那么笨重

【问题讨论】:

    标签: php laravel laravel-5 laravel-5.2


    【解决方案1】:

    Gitter 的回答由 Ben Johnson 提供:

    @if(Route::currentRouteName() == 'blog.edit')
        //
    @endif
    

    【讨论】:

      猜你喜欢
      • 2016-04-23
      • 1970-01-01
      • 2014-11-29
      • 2021-11-14
      • 1970-01-01
      • 2016-04-06
      • 2016-05-08
      • 2019-06-30
      • 2015-12-20
      相关资源
      最近更新 更多