CakePHP には論理削除を扱う SoftDeletable というプラグインがあります。 Cake Syrup: CakePHP behaviors, components, plugins and shells ≫ Soft Deletable Behavior 今回はじめて使ったんですが、関連テーブル($hasMany とか)については deleted = 1 になっていても、そのレコードも拾ってしまう造りのようで。今回のシステムは関連もそこそこ複雑で論理削除データを見る箇所は少ないので、関連テーブルの論理削除データを拾わないようにしてみました。 関連テーブルの対応を行う前に SoftDeletable の基本的なところ [CakePHP] SoftDeletable Behavior で論理削除 | Sun Limited Mt. がいい感じの解説になっています。 最新版の状況