cakephpのヘルパーについて


以下のURLのcakephpのチュートリアルを進めていて、疑問に思ったのですが、  
例えば、foreachで出力した＄dataを使ってfindのヘルパーでデータベースから検索といったプログラムを作る場合、どうすればいいのでしょうか？  
index.ctpのファイル上でfindヘルパーは使えないと思うのですが。。

詳しい方、ご教示ください。  
[http://libro.tuyano.com/index3?id=755001&page=3](http://libro.tuyano.com/index3?id=755001&page=3)




[アソシエーション](http://book.cakephp.org/2.0/ja/models/associations-linking-models-
together.html)を設定しているのでもなければ、コントローラ側でそれぞれ find
しておくことになるかと思います。動作確認はしてないですが、こんな感じで。

[code]

    function index() {
        ...
    
        $datas = $this->MyModel->find('list');
        $submodels = array();
        foreach ($datas as $key => $data) {
            $submodels[$key] = $this->SubModel->find('list', array(
                'conditions' => array(
                    'SubModel.mainkey' => $key
                )
            ));
        }
        $this->set('datas',$datas);
        $this->set('submodels',$submodels);
    }
    
    <?php foreach ($datas as $key => $data): ?>
        <h2><?php echo $data; ?></h2>
        <?php foreach ($submodels[$key] as $submodel): ?>
            <?php echo $submodel; ?>
        <?php endforeach; ?>
    <?php endforeach; ?>
    
[/code]

ここでは MyModel のプライマリキーをキーとした配列に SubModel の find
結果を入れていますが、どういうデータを取得するか、ビュー側に渡すかによって、ここの取得方法や構造は変わってきます。

