我想在我的视图中构建一个链接,指向与放置它的那个页面相同的页面.我希望能够给出一个参数.
例如,我想改变语言.我有一条路线
domain.com/{lang}/xyz
在我看来,我想做点什么
<a href="{{ URL::action(this,['lang' => 'en']) }}">EN</a>
所以我可以轻松地重新加载页面,但只需更改“lang”参数.
希望它可以理解.请尽力帮助我.
(另一个问题:是否没有资源,例如Laravel中所有视图助手的列表?我在哪里知道哪些视图助手可用?)
使用laravel的帮助方法在视图中使用:
url()->current()
Route::current()->getName()
现在,您可以使用此路由名称来创建自己的新URL.
例如:
<a href="{{ URL::action(Route::currentRouteName(),['lang' => 'en']) }}">EN</a>
您的路线定义可能类似于:
Route::get('/{lang}/about/',['as'=>'about_us','uses'=>'PagesController@about'])
这将为您提供当前的URL.
但在您的情况下,最好将此包用于多语言:
https://github.com/mcamara/laravel-localization
它非常简单易用.