bak*_*ker 5 php localization laravel
“您还可以使用 App 外观上的 setLocale 方法在运行时更改活动语言:” https://laravel.com/docs/5.3/localization#introduction
Route::get('welcome/{locale}', function ($locale) {
App::setLocale($locale);
//
});
Run Code Online (Sandbox Code Playgroud)
如果我们有这样的东西,我们如何用 $locale 做到这一点:
Route::group(['prefix' => 'admin/{id}/{locale}', 'namespace' => 'Admin'], function( $locale ) {
// this does not work.
App::setLocale( $locale );
// this does work.
App::setLocale( Request::segment( 3 ) );
Route::resource('product', 'ProductController', ['except' => [
'show'
]]);
});
Run Code Online (Sandbox Code Playgroud)
问题在于路线参数而不是本地化
由于您期望路线有两个参数,因此您应该为闭包传递两个参数。
Route::get('posts/{post}/comments/{comment}', function ($postId, $commentId) {
//
});
Run Code Online (Sandbox Code Playgroud)
在你的例子中
Route::group(['prefix' => 'admin/{id}/{locale}', 'namespace' => 'Admin'], function( $id, $locale ) {
// this does not work.
App::setLocale( $locale );
// this does work.
App::setLocale( Request::segment( 3 ) );
Route::resource('product', 'ProductController', ['except' => [ 'show' ]]);
});
Run Code Online (Sandbox Code Playgroud)
请参阅路线参数以获取更多信息
归档时间: |
|
查看次数: |
6431 次 |
最近记录: |