2017-04-22 109 views
2

我爲我的項目使用了laravel 5.4,我只想獲取刀片文件中的路由名稱空間或前綴。那麼是否有可能獲得路線組命名空間?Laravel:獲取當前路由名稱空間(form.blade.php)

我的路線:

Route::group(['prefix'=>'organization','namespace'=>'Organization'], function(){ 
      Route::get('team/{id}',['as'=>'info.team' , 'uses'=>'[email protected]']); 
}); 

刃文件:

{{dd(\Request::url())}} 

我得到這個:

"http://ocrm.dev/organization/team/8" 

,所以我只需要:

http://ocrm.dev/organization 

有可能嗎?

回答

2

您可以使用前綴而不是名稱空間,因爲您的名稱空間和前綴看起來相同。

$request->route()->getPrefix() 
+0

以及我如何獲得前綴? –

+0

請檢查我的更新答案。 – sandeep

3

您可以使用starts_with()currentRouteName()檢查路由名稱從指定的名稱空間字符串開頭:

if (starts_with(Route::currentRouteName(), 'Organization.')) 

如果你想查詢網址,使用is()方法:

if (request()->is('organization*')) 

如果你想獲取路線前綴,這是organization,這是由@sandeep修改的一些解決方案,但全球可用(因此您可以在視圖,控制器,自定義類等中使用):

request()->route()->getPrefix() 

因此,爲了得到這個網址:

http://ocrm.dev/organization 

你可以使用url()幫手。此解決方案也是全球可用的:

url(request()->route()->getPrefix()) 
+0

我只需要,什麼是這裏的路由前綴..我不知道它是否組織或別的東西 –

+0

@RahulSharma我已經更新了我的答案,在全球可用的解決方案。 –