1

我一直有這個問題幾天後,研究,我還沒有找到解決方案。
我在CakePHP 2.5.6項目上,現在我正在進行國際化,一切似乎都很順利,但我遇到了這個問題:
在我的數據庫中,我爲我的文章存儲了多個標籤,問題是標籤的名稱是直接從數據庫中查詢給我的,並使用foreach打印。
這是我的疑問,有沒有什麼辦法可以使用我的.po文件來翻譯這些字段?
我想過一些解決方案,但我試圖避免它們,因爲我認爲它們只是跛腳,比如在我的標籤表中創建一個帶有已翻譯名稱的新列。使用.po文件直接從數據庫翻譯文本

回答

1

CakePHP的pot文件是爲模板文件中的硬編碼字符串和應用程序中的其他位置生成的。基本上像__('Hello')這樣的東西,如果你使用像__($var)這樣的變量,它不起作用,因爲它需要知道字符串來生成翻譯文件。

如果內容來自數據庫,您需要按照您的建議轉換數據庫中的數據庫內容。您不應該在標籤表上創建一組新的列,而應該考慮使用CakePHP的Translate behaviour。 Cake的翻譯行爲應該做你正在尋找的東西,而不需要重新發明輪子。

+1

謝謝你,我不知道TranslateBehaviour類,它看起來正是我需要的! :) – Asur

相關問題