CakePHP $hasManyが効かない

CakePHPでhasManyが効かないから焦ったー。。。

public $hasMany = array(
'Model名' => array(
'className' => 'クラス名',
'foreignKey' => '外部キー',
),
);

と設定してみたが、全然反応しない。
ログを出してみてもSQLも発行されていなかった。

- public $recursive = 0;
+ public $recursive = 1;

リカーシブを1以上に設定する必要があったのね。。。

hasManyアソシエーションは、Userモデルのレコードを取得した時に、そのユーザーのコメントも取得できるようになります。

className
元モデルに関連付けられるモデルのクラス名。User hasMany Comment を定義したい場合、’Comment’となります。
foreignKey
アソシエーション先のモデルを検索するための外部キーの名前。これは複数のhasManyを定義するためによく使われます。このキーのデフォルト値はアソシエーション先のモデルの単数形に _id がついたものです。
conditions
array('Comment.visible' => true) のような、find()に指定するconditionsと互換性のある配列、もしくはSQL文字列を指定します。
order
array('Profile.last_name' => 'ASC') のような、find()に指定するorderと互換性のある配列、もしくはSQL文字列を指定します。
limit
アソシエーションモデルのデータの最大行数。
offset
アソシエーションモデルのデータをスキップする行数。
dependent
trueをセットすれば、データを再帰的に削除するようになります。たとえばUserレコードが削除されたら、Commentレコードも削除されます。
exclusive
trueをセットすれば、deleteAll()を呼び出した時にデータを再帰的に削除するようになります。この処理は以前に比べて劇的なパフォーマンスの改善が施されていますが、あまり多用しないでください。
finderQuery
アソシエーションモデルのレコードを取得する時に使われるSQLクエリ。取得結果をカスタムしたい時に使います。実行したいクエリ中でアソシエーションモデルのIDを参照する必要がある場合、{$__cakeID__$} マーカーを使います。たとえば、Apple hasMany Orangeというアソシエーションの場合、以下のようなクエリになるでしょう。SELECT Orange.* from oranges as Orange WHERE Orange.apple_id = {$__cakeID__$};

とりあえず解決してよかった。
全然気づかなくてフレームワークの中までソースを追ってしまった。。。

こういう時でもないと、ソースを深くまで読まないから無駄にはならなかったかな