2016-02-11 12 views
7

自分のビューにそのページが配置されているような同じページを参照するリンクを作成したいと思います。そして、私はパラメータを与えることができるようにしたい。Laravel:パラメータを持つビューヘルパーとして現在のURLを取得する方法

たとえば、言語を変更したいと思います。私は

domain.com/{lang}/xyz 

のようなルートを持っており、私の見解で私はだから私は簡単にページをリロードしますが、単に「LANG」のパラメータを変更することができます

<a href="{{ URL::action(this, ['lang' => 'en']) }}">EN</a> 

のような何かをしたいです。

うまくいけば分かります。私を助けてください。

は(別の側の質問:?何ressourcesはありませんが、私はviewhelpersが利用可能であるか知っていますLaravelのすべてのビューヘルパーのリストを例えば?)

答えて

20
laravelのヘルパーメソッドは、ビューで使用する

使用:

url()->current() 

これは現在のURLを取得します。現在のルート名を取得する必要がある場合は、

Route::current()->getName() 

このルート名を使用して、独自の新しいURLを作成できます。

例:

<a href="{{ URL::action(Route::currentRouteName(), ['lang' => 'en']) }}">EN</a> 

あなたのルート定義は次のようなものになることがあります。

Route::get('/{lang}/about/', ['as'=>'about_us', 'uses'=>'[email protected]']) 

これはあなたの現在のURLを提供します。

しかし、あなたの場合には、それは、多言語のため、このパッケージを使用することをお勧めします: https://github.com/mcamara/laravel-localization

それは非常にシンプルで使いやすいです。

+0

私の質問に答えることはできません。 – humpdi

+0

url() - > current()どうすればENの中でそれを使用し、それに{lang}パラメータを与えるべきですか? – humpdi

+0

更新された回答を確認してください。 –

関連する問題