自分の手元で生成されたモデルクラスを基にまとめてみる。あくまで自分用なので環境によっては違ったりするかもね。
BaseObject クラス
対象メソッド |
フック名 |
備考 |
delete |
:delete:pre |
delete() の冒頭で呼ばれる。falseを返すと以降の処理をおこなわない。 |
delete |
:delete:post |
delete() の末尾で呼ばれる。 |
save |
:save:pre |
save() の冒頭で呼ばれる。整数型の結果を返すと affectedRows であると見なし、その結果を関数の結果として返却した上で、以降の処理をおこなわない。 |
save |
:save:post |
save() の末尾で呼ばれる。 |
__call |
:(任意のメソッド名) |
マジックメソッド __call の冒頭で呼ばれる。コールされたメソッド名に基づいた名称のフックが登録されていればそのメソッドを実行する。登録されていない場合はsfExceptionをthrowする。 |
Base**Peerクラス
対象メソッド |
フック名 |
備考 |
doCount |
Peer:doCount:doCount |
doCount() の冒頭で呼ばれる。 |
doSelectStmt |
Peer:doSelectStmt:doSelectStmt |
doSelectStmt() の冒頭で呼ばれる。 |
doInsert |
Peer:doInsert:pre |
doInsert() の冒頭で呼ばれる。falseを返すと以降の処理をおこなわない。 |
doInsert |
Peer:doInsert:post |
doInsert() の末尾で呼ばれる。 |
doUpdate |
Peer:doUpdate:pre |
doUpdate() の冒頭で呼ばれる。falseを返すと以降の処理をおこなわない。 |
doUpdate |
Peer:doUpdate:post |
doUpdate() の末尾で呼ばれる。 |
doSelectJoin** |
Peer:doSelectJoin:doSelectJoin |
doSelectJoin**() の冒頭で呼ばれる。 |
doSelectJoinAll |
Peer:doSelectJoinAll:doSelectJoinAll |
doSelectJoinAll() の冒頭で呼ばれる。 |
doCountJoin** |
Peer:doCount:doCount |
doCountJoin**() の冒頭で呼ばれる。doCountのフックと同じ。 |
doSelectJoinAllExcept** |
Peer:doSelectJoinAllExcept :doSelectJoinAllExcept |
doSelectJoinAllExcept**() の冒頭で呼ばれる |