Laravel trans()不工作
我的目录如下所示:Laravel trans()不工作,laravel,Laravel,我的目录如下所示: /resources /lang /en api.php <?php return [ 'couldnotlogin' => 'Login failed, please check email and password', ]; api.php如下所示: /resources /lang /en api.php <?php return [
/resources
/lang
/en
api.php
<?php
return [
'couldnotlogin' => 'Login failed, please check email and password',
];
api.php如下所示:
/resources
/lang
/en
api.php
<?php
return [
'couldnotlogin' => 'Login failed, please check email and password',
];
它将只输出:
api.couldnotlogin
dd(App::getLocale());
返回en
dd(App::getLocale());
其他设置
'locale' => 'en',
'fallback_locale' => 'en',
我做错了什么?我认为您希望在控制器中获取语言变量,如果是这种情况,则需要通过Lang获取
//Namespace
use Lang;
//in controller action
Lang::get('api.couldnotlogin');
lang不应该嵌套在资产下。它应该嵌套在资源下。。。这就是它不起作用的原因在哪里/何时调用该函数?因为
代码>我假设它不在巴尔德View@Webdesigner我只调用dd(trans('api.couldnotlogin');在我的例子中,我的区域设置不是en
。它是en_IE
,我的项目中没有这个文件夹。我在那个文件夹中创建了文件夹和相关的语言文件,并为我修复了它。你行dd(App::getLocale())代码>帮助我找到问题。谢谢,如果我这样做的话,结果也是一样的:/您能告诉我您想在控制器或刀片服务器中的何处获取消息吗?您得到的错误还只是因为“如果转换键不存在,函数将返回api.couldnotlogin。”检查引用:我想像这样返回它return redirect()->back()->withErrors([trans('api.couldnotlogin')));我还尝试了return response()->json(trans('api.couldnotlogin');但同样的结果是,您可以通过检查dd(Lang::has('api.couldnotlogin','en')来确认错误消息