HABTM関係があり、次の製品配列のような製品テーブルからカテゴリテーブルのネストされたデータを取得したいと思います。
array(
(int) 0 => array(
'id' => (int) 1,
'name' => 'a',
'categories' => array(
(int) 0 => array(
'id' => (int) 1
),
(int) 1 => array(
'id' => (int) 2
)
)
),
(int) 1 => array(
'id' => (int) 2,
'name' => 'b',
'categories' => array(
(int) 0 => array(
'id' => (int) 1
)
)
)
)
これはケーキで可能ですか?
編集:私は私がやりたいことをさらに説明しようとします。
我慢してください、私はケーキに不慣れで、それをつかむのに苦労しています。
'product'テーブルがあります:
public $hasAndBelongsToMany = array(
'Category' => array(
'className' => 'Category',
'joinTable' => 'categories_sculptures',
'foreignKey' => 'sculpture_id',
'associationForeignKey' => 'category_id',
'unique' => 'keepExisting'
)
)
およびカテゴリテーブル:
public $hasAndBelongsToMany = array(
'Sculpture' => array(
'className' => 'Sculpture',
'joinTable' => 'categories_sculptures',
'foreignKey' => 'category_id',
'associationForeignKey' => 'sculpture_id',
'unique' => 'keepExisting'
)
);
およびカテゴリ製品テーブル:
public $belongsTo = array(
'Category' => array(
'className' => 'Category',
'foreignKey' => 'category_id',
'conditions' => '',
'fields' => '',
'order' => ''
),
'Sculpture' => array(
'className' => 'Sculpture',
'foreignKey' => 'sculpture_id',
'conditions' => '',
'fields' => '',
'order' => ''
)
);
彫刻のビューテーブルを作成し、各行に各彫刻が含まれるカテゴリ(複数の場合もあります)を表示したいと思います。私はケーキが初めてなので、これをどうやってやるのかわかりません。mysqlにクエリを実行するだけの場合は、group_concatまたはネストされたselectを使用して、または最初の配列をループし、sculptureキーでcategory_sculptureテーブルにクエリを実行し、結果を最初の配列に追加することで、この情報を取得できます。しかし、私はこの結果をケーキのようにするための最良の方法を知りたいです。