2010-11-25 7 views
0

私はCode IgniterからcakePHPに移動して、私の前にその権利を賭けましたが、私はマニュアルを通して把握したり、関係データにアクセスする方法を神が知ることはできません。たとえば、2つのテーブルBOOKSとAUTHORSがあるとします。/books /にアクセスしてリストを印刷すると、おそらくIDとTitleが印刷され、author_idが表示されます。しかし、どうやって筆者の名字を実際にプリントアウトするのですか? AUTHORSテーブルにありますか?cakephpの関係データにアクセスするには?

これはコードインストゥルメント(dmzを使用)で$ book-> author-> first_nameと書いただけです。 私はちょうど見つけることができないと思います。

方法を教え、またはちょうどそれを学ぶためにどこに私を指すように、誰のための

非常に感謝(はい、私はモデルに設定さの関係を持っています)。怠惰ではなく、探しているだけで、それを見つけることができません。

に関して、 ジェイソン

+4

てみてください取得したデータに対して 'debug($ books)'を実行します。あなたの関係が正しく設定されていれば、作者がそこにいるはずです。 – deceze

答えて

1

あなたの関係が正しく設定されている場合、あなたは

echo $data['Book']['Author']['firstname']; 

これは、あなたがものをouputをできるようにする必要がありますすることができます。

+0

ありがとうございます、私はそれがcakePHPと比較してCIで行われた方法の間で異なった構文であることを発見しました。 – Jason

0

「著者のデータが$booksにない場合は、必ずあなたの再帰が適切に設定されていることを確認する必要があります

$this->Book->recursive = 1; 

それとも、「著者」モデルが含まれていること:

$this->Book->find('all', array('contain' => array('Author')); 
+0

はすべてソートされました。ありがとうございます! – Jason