n...n
2つのテーブルの構造がmakes
ありmodels
ます。これまでのところ問題ありません。
次のような3番目のテーブル(products
):
id
make_id
model_id
...
私の問題は、makeモデルを含む1つの特定の製品のビューを作成することmake
ですProductsController
。
私はこれがうまくいくと思いました:
var $uses = array('Make', 'Model');
$this->Make->id = 5; // My Make
$this->Make->find(); // Returns only the make I want with it's Models (HABTM)
$this->Model->find('list'); // Returns ALL models
$this->Make->Model->find('list'); // Returns ALL models
したがって、を使用list
してビューにパスしてラジオボタンを作成する場合foreach()
は、make
配列ですべてのモデルタイトルを検索し、新しい配列を作成して、を介してビューに送信する必要があります$this->set()
。
$makeArray = $this->Make->find();
foreach ($makeArray['Model'] as $model) {
$modelList[] = $model['title'];
}
$this->set('models', $models)
make
アレイにストレスをかけずにそのリストを取得する簡単な方法はありますか?私のアプリケーションでそのようなシナリオを開発することは、一般的なタスクになります。
ヒントを事前に感謝します!