CakePHP 2.1 .po-Dateien / übersetzung funktioniert nicht

Benutze ich <?php echo __("this is my string"); ?> in meine Ansichten zum anzeigen von text in mehreren Sprachen. Erstellt habe ich eine .po-Datei-Verzeichnis für die Deutsche Sprache:

=> app/Locale/DEU/LC_MESSAGES/default.po

msgid "dies ist mein string"

msgstr "dies ist meine zeichenkette"

Wenn ich Configure::write('Config.language','ger'); zu meinem AppController.php function beforeFilter hinzu der text bleibt immer noch "dies ist mein string". Auch wenn ich eine .po für Englisch mit verschiedenen msgstr text ist immer noch der gleiche.

Muss ich eine bestimmte Einstellung zum aktivieren der übersetzung?


Ich habe ein follow-up-problem: ich Hinzugefügt Configure::write('Config.language','eng'); zu core.php mein Standard-Sprache ist, aber jetzt kann ich nicht ändern Sie den Wert, auch wenn ich versuche, um es zu überschreiben in AppController.php beforeFilter hinzu mit:

Configure::write('Config.language', 'deu'); //'de' also doesn't work
CakeSession::write('Config.language', 'deu'); //'de' also doesn't work

Wenn ich den Wert ändern in core.php es funktioniert völlig in Ordnung, aber einmal im core.php ich kann es ändern.

gelöst: ah, ich vergaß hinzuzufügen parent::beforeFilter(); innerhalb der beforeFilter hinzu Funktion aller Controller.


Zusätzliche Informationen:

  • Wenn Sie wollen, definieren Sie eine Standard-Sprache (und Sie normalerweise wird), fügen Sie Configure::write('Config.language', 'eng'); zu den core.php
Schreibe einen Kommentar