Cakephp按组查找可包含/可链接

Cakephp按组查找可包含/可链接,cakephp,cakephp-2.0,containable,Cakephp,Cakephp 2.0,Containable,我在cakephp 2.1应用程序标签、类别和产品中有3个模型 产品通过hasOne关系与类别和标签相关联 使用containable或linkable实现以下数据结构最有效的方法是什么 [Label] [Category] [Product] 基本上我想按类别和标签分类产品 我能想到的唯一解决方案是通过检索产品以afterFind样式修改数据 $this->Product->find('all', array( 'contain' => ar

我在cakephp 2.1应用程序标签、类别和产品中有3个模型

产品通过hasOne关系与类别和标签相关联

使用containable或linkable实现以下数据结构最有效的方法是什么

[Label]
    [Category]
        [Product]
基本上我想按类别和标签分类产品

我能想到的唯一解决方案是通过检索产品以afterFind样式修改数据

$this->Product->find('all', array(
    'contain' => array(
        'Category',
        'Label
);

然后使用foreach重新格式化数据结构以获得所需的结果。我不确定我是否正确理解了这一点,但根据我的理解,以下是您应该做的

在各自的模型中

Label hasMany Category; // label.php
Category belongsTo Label; // category.php
Category hasMany Product; // category.php
Product belongsTo Category; // product.php
在要获取这些关联的产品控制器中

$this->Product->Label->recursive = 2;
$this->Product->Label->find('all');
由此产生的结构将是

[Label]
   [Category]
      [Product]