Как создать пользовательскую функцию обратного вызова в cakephp после saveAll()

Я разрабатываю приложение в cakephp. В этом приложении я использую функцию saveAll() во многих разных местах для сохранения нескольких записей. Что нужно, так это создать функцию обратного вызова, которая автоматически вызывается после выполнения saveAll(), поскольку я думаю, что в cakephp нет предопределенной функции обратного вызова, которая вызывается после saveAll(). Я знаю, что есть функция afterSave(), которая вызывается после каждого действия save(). Какое может быть решение. Любые предложения будут действительно оценены. Спасибо :)


person Vineet    schedule 09.04.2012    source источник
comment
Я думаю, что afertSave() book.cakephp.org/1.3/es/view/1053 Функция /afterSave — ваш лучший шанс.   -  person Lobo    schedule 09.04.2012
comment
но проблема в том, что afterSave() вызывается после сохранения каждой отдельной строки. Так что не могу его использовать.   -  person Vineet    schedule 09.04.2012
comment
Переопределите функцию saveAll в вашей модели.   -  person Lobo    schedule 09.04.2012


Ответы (2)


Вы можете переопределить функцию saveAll в своей модели следующим образом:

function saveAll($datos=null, $opciones = array()){
    parent::saveAll($datos, $opciones);
    $this->yourCallBackFunction();
}

function yourCallBackFunction(){
    //do something
}

С Уважением!

person Lobo    schedule 09.04.2012

person    schedule
comment
Большое спасибо .. я должен просто поместить эту функцию в app_model, верно ..? - person Vineet; 09.04.2012
comment
Да, AppModel или конкретная модель, в зависимости от того, что вы хотите. - person deceze♦; 09.04.2012