2017-04-20 7 views
0

は現在、私は私のLaravelアプリLaravelアプリで「モジュール」の名前をどのようにエコーしますか?

App 
- Module 
- Module 1 
- Module 2 
- Module 3 

に異なるモジュールを持っていると私は(簡単のため)各モジュールのルートをグループ化してきました。ナビゲーションバーでタイトルを持っていると私はタイトルがそう関係なく、私は、上のモジュール名だモジュールのどのページルートグループの名前がないようにしたいビュー(ブレードテンプレート)では

// Module 
Route::group(
    [ 
     'namespace' => 'Module', 
     'prefix' => 'Module', 
    ], 
function() { 
    Route::get('/', '[email protected]'); 
    Route::get('home', '[email protected]')->name('Module'); 

Navbarにあります。

現在、私は、ブレード・テンプレートに

{{ Request::path() }} // which returns Module/PageName 

を入れて試してみました。これと同様に

{{ Route::getCurrentRoute()->getPrefix() }} // which returns /Module 

しかし、これらの両方に出力に余分なものがあります。 2番目は私が得た最も近いものです '/'を削除する必要があります

これを達成する最良の方法であるかどうかはわかりませんが、これをより効率的に行う方法があれば私にも教えてください。

ありがとうございます。

+0

解決策は既にあなたのコードにあると思います。最初のソリューションを使用することができます。これは '' {} '文字を見つけるたびに '' String''を '' Array''に分割します。 '' {{{{}}}}次に 'Module'という名前が入っていることを知っている' Array'の最初の要素を選ぶことができます。 – Teocci

+0

ありがとうございますこれはうまく動作します! –

+0

私はあなたの質問を閉じることができるように答えとしてそれを入れます – Teocci

答えて

0

解決策は既にあなたのコードにあると思います。 最初の解決策を使用できます。

{{ explode('/', Request::path())[0] }} 

ArrayRequest::path()'/'文字を見つけるたびに分割するexplode方法:このコードで

{{ Request::path() }} 

: はこれを交換してください。次に、[0]で配列の最初の要素を選択します。この要素には、必要なModuleという名前が含まれています。

0

ルートの名前を入力してRoute::currentRouteName()を使用すると、ルートの名前を取得できます。それが助けて欲しい!

関連する問題