Получить идентификаторы всех вставленных записей по последнему запросу, выполненному в cakephp

Я могу найти идентификатор первичного ключа последней вставленной записи следующим образом:

$this->Model->save($record);
$id = $this->Model->getLastInsertId();

Я ищу что-то вроде этого:

$this->Model->saveAll($records);
$ids = $this->Model->getLastInsertIds();

Я вставляю сотни записей, поэтому лучше вставить их все в один запрос. Тем не менее, выполнение сценария использования занимает несколько секунд. Есть ли способ получить все идентификаторы вставленных записей по последнему запросу?

Об этом спрашивали на многих форумах, но четкого ответа нет.

1 ответ

Я думаю, что это может работать и может быть тем, что вы ищете:

$this->Model->saveAll($records);
$id1 = $this->Model1->id();
$id2 = $this->Model2->id();
$id3 = $this->Model3->id();
...

Не забудьте заменить model1,model2,model3 каждой из моделей, в которые вы сохраняете.

Вы смотрели учебник CakePHP по сохранению ваших данных? вот ссылка: http://book.cakephp.org/view/1031/Saving-Your-Data

Надеюсь это поможет.

Другие вопросы по тегам