Можно ли сделать aftersave () на app_controller.php в CakePHP? - PullRequest
0 голосов
/ 22 декабря 2010

Можно ли сделать aftersave () для app_controller.php в CakePHP?

Я хочу обнаружить это в app_controller для глобального использования, поэтому я не буду повторять его на каждом контроллере или модели.

Спасибо, S

1 Ответ

4 голосов
/ 22 декабря 2010

во-первых afterSave() является функцией класса модели торта , а не контроллера .Поэтому рекомендуемое решение состоит в том, чтобы определить общее /app/app_model.php

// app/app_model.php
class AppModel extends Model {

    function afterSave($created) {
         if($created) {
                 // do clean up after insert
         } else { 
                 // do clean up after update
         }
    }
}

В классе вашей модели

// app/models/user.php
class UserModel extends AppModel // <- its extending AppModel

Это будет выполнено всем запросом к $this->ModelName->save()

...