使用{domain}通配符时,有没有办法全局设置路由(['domain'=> $ domain])属性(不是在函数级别)

问题描述 投票:0回答:1

Laravel 5.5

在RouteServiceProvider中使用{domain}组

我希望能够在刀片中调用Named Routes而不必通过

public function pageName($domain){ return view('mypage', ['domain'=>$domain,'othervars'=>$domain)]) }

并避免刀片中的这个混乱:

{{ route('nameOfRoute', ['domain'=>$domain]) }}

相反,我希望只是在我的路线组中将route(['domain'])属性设置为$ domain并完成它。

laravel laravel-5.5
1个回答
0
投票

没有全局方式来设置它,而是使用我自己的帮助函数包装route('name')默认帮助函数,并将param添加到数组中。

功能示例:

function orgRoute($route, $params = [])
{
    if (!is_array($params)){
        $params = [$params];
    }

    // Set the domain value if not set, null, or jibberish
    if (!isset($params['domain']) || $params['domain']=='{domain}' || $params['domain'] == '')
    {
        // Instance of App Domain is set in OrgBaseController __construct()
        $domain = \App::make('current_domain');
        $params['domain'] = $domain;
    }


    return route($route, $params);
}
© www.soinside.com 2019 - 2024. All rights reserved.