2011-07-30 65 views
0

我已經爲我的cakePHP應用程序設置了本地化,並且在保存時遇到問題。保存翻譯

我有以下模式

id name 

而另一場description這將是翻譯。

當我做下面的代碼:

$this->Test->locale = "en_US"; 
$this->Test->set("name", "test 1"); 
$this->Test->set("description", "desc US"); 
$this->Test->save(); 

工作正常(即名稱被保存在上述模式&描述,正確的信息被保存在國際化表) - 插入主鍵是1 - 但

當我嘗試通過執行以下代碼以添加一個新的翻譯:

$this->Test->locale = "fr_FR"; 
$this->Test->id = 1; 
//$this->Test->set("name", "test 1"); 
$this->Test->set("description", "desc FR"); 
$this->Test->save(); 

即離開name字段,沒有得到保存!我希望在i18n表中有另一行,並帶有fr_FR描述的新翻譯。

如果我不註釋掉name領域,它將被保存但將更新name 領域也有應該不能被翻譯!

任何想法爲什麼請嗎?

回答

0

這不就是一個簡單的驗證問題嗎?如果您希望繞過驗證方法,請將null作爲保存方法的第二個參數。