2012-04-09 9 views
0

私はcakephpでアプリケーションを開発しています。私はcakephpのupdateAll()関数を使って更新されたすべての行のIDを取得する必要があります。どんな提案も高く評価されます。ありがとう..cakephpのupdateAll()関数によって更新された行のIDを取得する方法は?

は、これは私が私のアプリモデル

class AppModel extends Model { 

    var $infos = array(); 

    function updateAll($fields, $conditions = true) { 
     $this->$infos = $this->find('all', array('conditions' => $conditions)); 
     $return = parent::updateAll($fields, $conditions); 
     $this->afterUpdateAll(); 
     return $return; 
    } 


    function afterUpdateAll(){ 
     foreach ($this->$infos as $info) { 
      //do something 
     } 
    } 

} 

に何をすべきかですウィルこの作品..?

答えて

1

updateAllに渡したのと同じ条件を渡して、findを発行する必要があります。

更新操作が条件で使用される列のいずれかでデータを変更する場合は、がupdateAllを呼び出す前にfindを使用する必要があります。あなたUPDATEアンシャル体の行が場合

+0

後に再びUPDATEは私の質問vin.it @ – Vineet

+0

を確認してくださいを編集したことは、あなたが私の更新の答えを参照して、投稿のコードでキャッチがあります。 – bfavaretto

+0

ええ、涼しい、素晴らしい観測..私のコードを編集し、ちょうどそれを確認.. – Vineet

0

- あなただけSELECTそれら

+0

私の質問を編集してください – Vineet

関連する問題