在cakephp中使用containable行为?
我有三个表类别,子类别和子类别。 现在,类别表包含id、名称等字段 子类别表包含id、类别id和名称等字段 和subsubcategory表包含id、subcategory_id和name等字段 现在,subsubcategory视图/索引将列显示为name、subcategory\u name 但我想在我的子类别索引页面中也显示类别名称 我使用containable行为将两个表关联为category和subsubcategory 这是我的密码:-- 子分类控制器:在cakephp中使用containable行为?,cakephp,containable,Cakephp,Containable,我有三个表类别,子类别和子类别。 现在,类别表包含id、名称等字段 子类别表包含id、类别id和名称等字段 和subsubcategory表包含id、subcategory_id和name等字段 现在,subsubcategory视图/索引将列显示为name、subcategory\u name 但我想在我的子类别索引页面中也显示类别名称 我使用containable行为将两个表关联为category和subsubcategory 这是我的密码:-- 子分类控制器: $contain =arra
$contain =array(
'Subcategory'=> array(
'Category' =>array(
'fields' => array('id', 'name')
)
));
$this->Subsubcategory->find('all',array('contain' => $contain));
应用模型:
public$actsAs=数组(“可包含”);
我的子分类页面仍然没有显示预期结果。
我该怎么办?您的模型中是否设置了正确的关系
class Category extends AppModel {
public $hasMany = array('Subcategory');
}
class Subcategory extends AppModel {
public $belongsTo = array('Category');
public $hasMany = array('Subsubcategory');
}
class Subsubcategory extends AppModel {
public $belongsTo = array('Subcategory');
}
您的查找结果显示了什么?您希望看到什么?在可包含行为中的
子类别
块中指定字段名称。还有一件事,您想在三个级别管理类别吗?如果是,则可以从一个表类别(具有父项id)中管理它。不需要为它创建其他表。我也使用了subcategory块中的fields部分,但这里没有结果是我的代码$contain=array('subcategory'=>array('fields'=>array('id','name')),'Subsubcategory'=>array('fields'=>array('id','name'));另一方面,为什么所有这些表/模型?为什么不使用嵌套数据?|在包含查找条件后添加'recursive'=>2
。是的,BadHorsie,我在我的模型中得到了与上述相同的正确关系集。你能告诉我如何显示类别和子类别表之间的关系吗?我的意思是我想获取类别我的subsubcategory索引页面中的e列,但它给了我一个错误,因为类别模型与subsubcategory不关联