我已将我的Laravel 8应用程序升级到版本9,根据升级指南,resources/lang
目录现在位于项目根目录(lang
)。
我已将lang
目录移动到项目的根目录,但似乎没有起作用。
// config/app.php
'locale' => 'pt-BR',
并且
// lang/pt-BR/messages.php
return [
'welcome' => 'Welcome to the app!',
];
控制器
return response()->json([
'message' => Lang::get('messages.welcome') // it returns "messages.welcome"
]);
但是,当我将lang
目录更改回/resources/lang
时,它就像在以前的Laravel版本中一样正常工作。因此,我创建了一个新的Laravel 9项目,并且它可以工作,这让我认为需要进行一些额外的配置,但这在升级指南中没有记录。我的composer.json
依赖项与新的Laravel项目完全相同。是否需要进行任何其他配置才能使Laravel识别此目录?
resources/lang
目录,因此每个语言文件都应该在项目根目录下的lang
目录中,而不仅仅是包文件。 - Marcelo The Mage Coderresources/lang
目录不存在...根据应用容器中的代码:https://github.com/laravel/framework/blob/9.x/src/Illuminate/Foundation/Application.php#L324 - lagbox