読者です 読者をやめる 読者になる 読者になる

CakePHP - findでjoinsを設定した時の挙動についてメモ

CakePHP

Cake自体のソースコードまで追って理解したってまではいかないけど動きはわかったので。


柔軟にテーブルをくっつけたくて、findのjoinsオプションを設定してjoinする。
動作的に返り値にjoinしたテーブルのデータが入ってることを期待してたんだけど
入ってこなかったのでうまくできているのかどうかわからんかった。


でも、conditions句は正常に動いてそうだったのでまあjoinはできているんだろうと。
何で返り値に入ってこないかっていう結論なんですけどfields句の指定に入ってないから。


fields句の指定は関連テーブル(hasManyとかbelongsToとか)してるテーブルは入ってるんだけど
join句で指定したテーブルは入っていないので結果にでないってだけ。


もし必要ならfieldsの値を'*'とかにすれば全テーブル対象になるから帰ってくると思う。