[perl] DBIx::MoCo::SaveTrigger
こんにちは、松本です。やはり雨でした。
弊社ではperlのORマッパーは CDBI をメインに使ってきましたが、最近では DBIx::MoCo をよく利用しています。
DBIx::Class も検討したのですが、依存するモジュールの量が多く、またラーニングコストも若干高く感じ、現在まだ使っていません。
DBIx::MoCoは はてな 製のORマッパーでCDBIに構造が良く似ています。
なのですが、1点 before_update/after_update の挙動が違いまして、以下となっています。
- CDBI
- UPDATEするSQL文を発行する前後でHookが実行される。
- DBIx::MoCo
- カラムの要素を更新した際にHookが実行される。
DBIx::MoCoでもCDBIでいう「before_update/after_update」を実現するために、追加モジュールを作成しました。
- DBIx::MoCo::SaveTrigger (ソースコードはこちらになります)
このモジュールをuse すると save メソッド(UPDATE文の実行)前後に「before_save/after_save」を実行してくれます。
独自のCacheをかけていたり、UPDATEする際に必ず更新するカラムが存在する場合など、またCDBIからの移植でも
便利になるかと思います。
使っていただけますと幸いです。








