2016-07-31 99 views
0

定義:CakePHP的3翻譯的問題

我想翻譯我的網站阿拉伯英語的。我完全遵循CakePHP 3文檔,但它不起作用。

我做什麼,到現在爲止:

我的網站的所有內容可以被翻譯除了閃離的消息:所有files.ctp通常翻譯

/src目錄/控制器/ UsersController:

$this->Flash->error(__('Your username or password is incorrect.')); 

當我改變語言

.po文件生成沒有翻譯出現:

... 

msgid "Your username or password is incorrect." 

msgstr "اسم المستخدم او كلمة السر غير صحيحتان" 

... 

區域設置目錄結構

在/ src目錄/區域設置文件看起來現在像這樣:

/ar_JO 
    /default.po 

儘管我嘗試在我的網站中翻譯我的FLASHES消息,但我沒有得到任何工作。我認爲這是一個緩存問題,所以我刪除了/ tmp/cache/persistent /中的文件。

回答

1

我解決了這個問題,謝謝大家

我只是說在控制器下面的代碼:

public function beforeFilter(Event $event) { 
..... 
.... 
$session = $this->request->session(); 
$lang=$session->read(’System.language.code’); 
     if($lang=='en_US'){ 
      \Cake\I18n\I18n::locale('en_US'); 
     }else{ 
      \Cake\I18n\I18n::locale('ar_JO'); 
     } 
    }