私はCakePHP 1.3でカテゴリ - >製品との単純なモデル関係を持っています
Category
多くを持っていますProducts
異なるコントローラーで取得するデータ配列にはわずかな違いがあります。データは、コントローラーProduct
で関連付けられたモデルとして取得されるとメイン プロダクト配列にあり、取得されるCategories
と分離されProducts
ます。
たとえば、「Product1」を取得するには
でCategories
- $category['Product'][0]['title']
そしてProducts
- $product[0]['Product']['title']
商品の表示に同じ要素を使用したいと思います。同じにするためだけに、どの配列方式を使用するかは問題ではありません。また、変更を行う適切な場所はどこですか? それらの配列を取得した後で変更することはできますが、それが最良の選択肢だとは思いません。
Categories
コントローラーでカテゴリを取得すると、次のようになります。
// $this->Category->findById('12');
Array
(
[ProductCategory] => Array
(
[id] => 12
[title] => Category 1
[updated] => 2013-02-24 10:06:15
[created] => 2013-02-24 10:06:15
)
[Product] => Array
(
[0] => Array
(
[id] => 4
[parent_id] => 12
[title] => Product1
[updated] => 2013-02-24 10:17:01
[created] => 2013-02-24 09:12:59
)
[1] => Array
(
[id] => 6
[parent_id] => 12
[title] => Product2
[updated] => 2013-02-24 10:16:54
[created] => 2013-02-24 09:13:53
)
)
そして、Products
コントローラー内のすべての製品を取得する場合:
// $this->Product->find('all');
Array
(
[0] => Array
(
[Product] => Array
(
[id] => 10
[parent_id] => 12
[title] => Product1
[updated] => 2013-02-24 10:16:42
[created] => 2013-02-24 09:16:35
)
)
[1] => Array
(
[Product] => Array
(
[id] => 8
[parent_id] => 12
[title] => Product2
[updated] => 2013-02-24 10:16:47
[created] => 2013-02-24 09:15:39
)
)
)
)