オブザーバー:はじめに
イベントベースのシステムは、特定のイベントに動作を追加できるようにします。 イベントが観測されると ORMは自動的にそれらを行うためには何があるのかどうかを確認するために追加されたすべてのオブザーバーを呼び出します
ORMはオブジェクト
関係マッピングの略です。 これは、2つのことを行います: オブジェクトにデータベースのテーブルの行をマップし、
それはあなたがそれらのオブジェクト間の関係を確立することができます。
それは
Active Record パターンに従いますが、 他のシステムに影響も受けます。
イベントベースのシステムは、特定のイベントに動作を追加できるようにします。 イベントが観測されると ORMは自動的にそれらを行うためには何があるのかどうかを確認するために追加されたすべてのオブザーバーを呼び出します
あなたは2つの方法でオブザーバを追加することができます: オブザーバをすべてのイベントのために、
またはオブザーバが呼び出す名前と多数の特定のイベントとしてのオブザーバを呼び出させる場合に、名前を加えてください。
オブザーバーがモデルと同じ名前空間にあって、Observer_で前に置かれるとき、
あなたは"Observer_"プレフィックスを無視することができます。他の全てのケースでは、あなたは完全なclassnameを提供しなければなりません。
class Model_Article
{
protected static $_observers = array(
'example', // will call Observer_Example class for all events
'Orm\\Observer_CreatedOn' => array(
'events' => array('before_insert'), // will only call Orm\Observer_CreatedOn at before_insert event
)
);
}