2013-05-29 40 views
0

我有一個表單與jQuery自動完成使用標準的方法與可見的輸入字段的文本和一個隱藏的ID字段的是 - 要傳遞的ID。爲了避免無效輸入,我使用CakePHP驗證來檢查id。標準實現將在隱藏的ID字段上顯示錯誤消息,即。它根本不會出現。現在我實現了兩種方法將錯誤消息重定向到可見輸入字段: 1)我爲輸入字段設置了驗證規則,而不是隱藏的id字段。驗證發生在自定義函數中,我使用$ this-data ['id']來檢查id的有效性。 2)我已經添加額外的鍵「redirectMessage」到validate陣列和在ModelValidator類,我已經修改了方法「無效」這樣的:CakePHP 2驗證錯誤與jQuery自動完成

$curVal = $this->_model->validate[$field]; 
if(array_key_exists('redirectMessage', $curVal)) 
    $field = $curVal['redirectMessage']; 

    $this->getModel()->validationErrors[$field][] = $message; 

如預期這兩種工作方式 - 但 - ISN有沒有官方的方法來解決這個問題?

問候

亞歷

回答

0

Model::invalidate()可能是一個 「官方」 的方式來做到這一點?

$this->getModel()->invalidate($field);