• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Language Bug

#1
Hi!

I'm migrate from CI3 to CI4 and I think have a bug on lang general function. When I call it, according the guide, the system return me the variable and not the message.

In Model:

$teste = lang("Logout.NoUser", [], "pt-BR");
return $teste;

Structure:
app/Language/pt-BR/Logout.php

<?php

return [
    "Logout.NoUser"          => "User not found",
];


When return from model is passed to the view...

View:
[Image: d368c910be.png]
Reply

#2
There is no bug.

CI4 returns key itself when this key cannot be found in referenced language file.

Docs say: "If the value doesn’t match a valid locale as defined in the App configuration file, the default locale will be used in it’s place." (https://codeigniter4.github.io/userguide...ation.html)

This is exactly your case. And it happens, because you added extra "Logout" prefix in your language file.

Create language file "app/Language/pt-BR/Logout.php", put the following content:

return [
"NoUser" => "User not found",
];

and use it: lang("Logout.NoUser", [], "pt-BR");

So you should use %Filename%.%Key% pattern in lang() function.
Also, if your key name is "Logout.NoUser", then you would call it "Logout.Logout.NoUser" Smile
Reply


Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2020 MyBB Group.