CakePHPって使いやすいんでしょうか
CakePHPが使いにくいのか、それとも、システムの前任がアレなのかはわからないですが、かなりアレな感じで、指摘箇所の修正中に出るわ出るわ、ダメぽ箇所が。
なんとなく実装中にふぁっきんふぁっきん言ってるプログラマの心境が分かる気がしますわー。
まぁ、実際CakePHPってあんまり直感的じゃないんですよね。
マイフレームワークがデザインベースだと直感的に作れるので、なおさら使いにくいと感じるのかもしれませんが。
ユニーク制約は大事です
というわけで、CakePHPで論理削除でisUniqueを使いたいということで調べてみました。
といっても、ドンピシャというのは見つからなかったので、適当なソースを参考に。
結局、以下のような実装にしてしまいました。
$conditions = $query["conditions"];
if (!is_array($conditions)) {
if (!empty($conditions)) {
$conditions = array($conditions);
} else {
$conditions = array();
}
}
$conditions[] = array($this->alias.".del_flg" => 0);
$query["conditions"] = $conditions;
return $query;
まぁ、ザ、適当な感じの実装なわけですが、これでisUniqueも期待通り動いてくれました。
元となったBehavierはもっといろいろ書いてあったので、本当ならもっといろいろ書かないとダメなのかもしれませんが。