【问题标题】:Laravel 5.2 Localization , auth::user value not showing up when switching languageLaravel 5.2 本地化,auth::user 值在切换语言时未显示
【发布时间】:2016-09-01 10:24:25
【问题描述】:

使用 Laravel 5.2.41

使用以下翻译包:mcamara/laravel-localization

在我的视图中链接:

<a href="{{ LaravelLocalization::getLocalizedURL(null, trans('routes.account-edit'), ["id" => Auth::user()->id]) }}"> Edit Link</a>

Lang/fr & Lang/nl 中的routes.php 文件

<?php
return [
    'account-edit'      => "account/wijzig-gegevens/{id}", 
];

<?php
return [
    'account-edit'      => "donnees/modifier-donnees/{id}", 
];

Laravel 路由文件:

 Route::group([

    'prefix' => LaravelLocalization::setLocale(),
    'middleware' => ['localize','localeSessionRedirect', 'localizationRedirect' ]

    ], function()
    {

Route::get(LaravelLocalization::transRoute('routes.account-edit'),'AccountController@edit');

});

当我以我的默认语言 (nl) 查看链接时,我得到了正确的链接,如下所示:

&lt;a href="http://blabla.dev/nl/account/wijzig-gegevens/1"&gt;Edit Link&lt;/a&gt;

但是当我将语言更改为法语时,我得到以下链接:

&lt;a href="http://blabla.dev/fr/donnees/modifier-donnees/{id}"&gt;Edit Link&lt;/a&gt;

不知道为什么会这样

【问题讨论】:

  • 我对这个翻译包真的没有任何经验。但是,我看到您正在翻译 trans('routes.account-edit'),在您的 ...::getLocalizeURL(... 中。尝试删除它。
  • @ThomasVanderVeen 感谢您的回复,但这并不是真正的问题,因为该部分正在工作,就像您在我返回的链接中看到的那样。如果我在那里对链接进行硬编码,它将消除翻译 url 的目的。我对所有链接都这样做,效果很好。就是当我有一个像这种情况下的参数时,它有这种奇怪的行为
  • 尝试拆分。首先在正常的route() 函数、dd() 返回值等上测试trans() 函数。我想我无法进一步帮助您:(
  • @ThomasVanderVeen 我确实尝试过,每个部分都完成了他们的工作,只有 user()->id 在法语翻译中丢失了。没问题,谢谢!

标签: php laravel laravel-5 localization


【解决方案1】:

我正在研究那个包的代码。

如果我没记错的话,在我看来,关于 URL 翻译的逻辑是基于路由名称,而不是路由路径。

你在这里使用的是路由路径:

LaravelLocalization::getLocalizedURL(null, trans('routes.account-edit'), ["id" => Auth::user()->id])

但您似乎实际上应该使用路由名称,在这种情况下表示'account-edit'

【讨论】:

  • 这正是我正在使用的,看我帖子的第三行。
  • 不,这就是我的意思,您使用的是trans()版本的字符串,您需要传入字符串,而不是翻译版本,删除对trans()的调用
  • 作为geLocalizedURL 的第二个参数,尝试发送路由名称,而不是翻译后的字符串。
  • 经过大量修改后,看起来确实如此
猜你喜欢
  • 2016-04-02
  • 1970-01-01
  • 2016-05-13
  • 1970-01-01
  • 1970-01-01
  • 2016-08-11
  • 2017-03-17
  • 2016-08-02
  • 1970-01-01
相关资源
最近更新 更多