2

如何从命名路由中获取翻译(选择语言)的 url?(或如何切换语言并使 Redirect::route(...) 到本地化链接)

我使用:php Laravel 4 (L4) mcamara/laravel-localization (LaravelLocalization)

4

1 回答 1

2

这很简单:) 只需使用

$lang = App:getLocale(); // two letters lang eg. 'en', 'pl'...
return Redirect::to( LaravelLocalization::getURLFromRouteNameTranslated($lang,
'routes.site.dashboard') );

警告!我们假设关键“site.dashboard”的路线英文翻译在文件中app/lang/en/routes.php

如果您有带有参数的路由,例如:'companies.edit' => 'companies/{company}/edit'在 routes.php 文件中,那么您可以使用:

$lang = App:getLocale(); // two letters lang eg. 'en', 'pl'...
Redirect::to(LaravelLocalization::getURLFromRouteNameTranslated($lang,
'routes.companies.edit', ['company' => $company->id]) );

就这样 :)

于 2017-03-14T09:34:40.207 回答