getDataSource(); $dataSource->begin(); if(count($data)>0) $result = $this->saveMany($data); else $result = true; if($result){ $array1 = array(); $array2 = array(); foreach($data as $a) if(isset($a['id'])) $array1[]=$a['id']; foreach($old as $a) if(isset($a['id'])) $array2[]=$a['id']; $diff=array_diff($array2, $array1); if(count($diff)>0) $result = $this->delete($diff); } if ($result) { $dataSource->commit(); return true; } else { $dataSource->rollback(); } return false; } public $validate = array( 'worker_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'branch_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'job_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), 'kindofjob_id' => array( 'numeric' => array( 'rule' => array('numeric'), //'message' => 'Your custom message here', //'allowEmpty' => false, //'required' => false, //'last' => false, // Stop validation after this rule //'on' => 'create', // Limit validation to 'create' or 'update' operations ), ), ); //The Associations below have been created with all possible keys, those that are not needed can be removed /** * belongsTo associations * * @var array */ public $belongsTo = array( 'DreamjobWorker' => array( 'className' => 'DreamjobWorker', 'foreignKey' => 'worker_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'DreamjobListKindofjob' => array( 'className' => 'DreamjobListKindofjob', 'foreignKey' => 'kindofjob_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'DreamjobListBranch' => array( 'className' => 'DreamjobListBranch', 'foreignKey' => 'branch_id', 'conditions' => '', 'fields' => '', 'order' => '' ), 'DreamjobListJob' => array( 'className' => 'DreamjobListJob', 'foreignKey' => 'job_id', 'conditions' => '', 'fields' => '', 'order' => '' ) ); }