2011-03-24 81 views
3

我想配置Symfony以從Mysql獲取翻譯,而不是從XLIFF文件獲取翻譯。在Mysql中的symfony翻譯

我看到這個頁面上的解釋:http://www.symfony-project.org/reference/1_4/en/05-Factories#chapter_05_i18n

我配置factories.yml文件:

i18n: 
    class: sfI18N 
    param: 
     source: MySQL 

而且我得到這個錯誤: 500 |內部服務器錯誤| sfException 連接到數組時出錯。

我想我應該配置哪個數據庫,但我不知道如何用doctrine做到這一點。

任何人都可以幫助我嗎? :)

謝謝。

+0

你是什麼意思的「它不工作」?任何錯誤消息?你的嘗試源代碼塊? 以及請接受您以前的問題更多的答案... – 2011-03-24 19:48:58

+0

是的,對不起,我編輯我的問題 – Charles 2011-03-25 13:23:30

回答

3

在此描述:

http://www.symfony-project.org/gentle-introduction/1_4/en/13-I18n-and-L10n

跳到節 「在數據庫中的文本信息」。

簡單描述:

  1. 創建表,如 「表名」
  2. 創建轉換表 「tablename_i18n」,如:
    • ID
    • 文化
    • 名(< =這是你想要翻譯什麼)

現在生成模型,它會自動生成針對Tablename對象的getName()方法,但它會有一個參數文化。

+0

感謝您的答案,但我不需要翻譯模型,但字符串。我想從__()方法存儲字符串到數據庫中。 – Charles 2011-03-24 21:36:39

+0

好吧,然後在這裏你去看看這個:http://trac.symfony-project.org/browser/tags/RELEASE_1_4_10/lib/i18n/sfMessageSource_MySQL.class.php在評論裏有如何配置它 – Aston 2011-03-24 22:45:32

+0

所以我只需要定義表目錄和trans_unit,它應該工作?我會嘗試一下謝謝:) – Charles 2011-03-25 13:25:02