在laravel中检查请求URL

时间:2016-01-09 17:33:46

标签: php laravel

在dashboard.blade.php中,我管理js库链接。

所以,因为我不想在所有页面中包含所有库,所以我这样做:

@if (Request::is("mail/create"))
        {!! Html::script('js/plugins/ui/nicescroll.min.js') !!}
        {!! Html::script('js/sidebar_detached_sticky_custom.js') !!}
@endif

每页或每组页面。

当我编辑一个项目时,我的URL有这种格式:

http://laravel.dev:8000/mail/1/edit

因为1是商店ID并且有所不同,我的方法不再适用了....

任何方法来解决我的问题或做得更好???

的Tx!

2 个答案:

答案 0 :(得分:1)

您可以改用路线名称,然后就可以这样做:

@if (Request::route()->getName() == "mail_edit") {
    {!! Html::script('js/plugins/ui/nicescroll.min.js') !!}
    {!! Html::script('js/sidebar_detached_sticky_custom.js') !!}
}

以下是命名路线的laravel文档:https://laravel.com/docs/5.1/routing#named-routes

或者你可以这样做:

@if (strpos(Request::url(),'mail') !== false && strpos(Request::url(),'edit') !== false) {
    {!! Html::script('js/plugins/ui/nicescroll.min.js') !!}
    {!! Html::script('js/sidebar_detached_sticky_custom.js') !!}
}

答案 1 :(得分:0)

如果@extend(main)在主模板的标题中添加了lib,那么你应该在主模板中包含js libs(你扩展的那个),然后你就不需要在每个页面上添加它了。