afterSave Функция вызывается после каждого отдельного сохранения в выполнении saveAll, так что вы можете сделать:
В вашей AppModel
class AppModel extends Model {
var $inserted_ids = array();
function afterSave($created) {
if($created) {
$this->inserted_ids[] = $this->getInsertID();
}
return true;
}
}
Вы можете поместить этот код в любую модель, и он должен работать нормально. Затем, чтобы вернуть идентификаторы после saveAll в вашем контроллере, вы должны сделать это так:
if($this->Post->saveAll($posts)) {
$post_ids=$this->Post->inserted_ids; //contains insert_ids
}
Надеюсь, это поможет