Laravel本地化翻译不起作用,仅显示默认语言

时间:2018-08-09 06:14:11

标签: php laravel localization

我正在尝试使用laravel构建多语言网站,但是翻译存在问题。它仅显示默认语言。即使我设置了应用区域设置语言,laravel仍会显示默认语言

当我说app.test/ar/adminapp.test/en/admin时,路线和其他路线也可以使用,我可以到达视图,只是跨消息无法使用。.

管理刀片服务器

<div class="row">
   <h1>{{trans('admin.welcome')}}</h1>
</div>

我尝试使用__('admin.welcome'),但结果仍然相同。

应用服务提供商;

public function boot(Request $request)
    {
        if (!session()->has("locale")) {
            session()->put("locale", $request->getPreferredLanguage(config("translatable.locales")));
        }
        app()->setLocale(session()->get("locale"));
    }

路线服务提供商

 Route::group([
            'middleware' => 'web',
            'namespace' => $this->namespace,
            'prefix' => session()->get("locale"),
        ], function ($router) {...});

语言中间件

public function handle(Request $request, Closure $next)
    {
        if (!in_array($request->segment(1), config('translatable.locales'))) {
            $segments = $request->segments();
            $segments = array_prepend($segments, app()->getLocale());
            return redirect()->to(implode('/', $segments));
        }

        return $next($request);
    }

文件夹结构

--en
    +admin.php
    +auth.php
    +pagination.php
    +passwords.php
    +validation.php

--ar
    +admin.php
    +auth.php
    +pagination.php
    +passwords.php
    +validation.php

那么我该如何解决呢?任何帮助将不胜感激。

0 个答案:

没有答案