php-cakephp-使用递归方法指定分页中的许多列/字段
在这里,我已经浏览了containable组件和其他问题,但这似乎对我没有帮助 基本上,我将paginate设置为1,这将返回类似于php-cakephp-使用递归方法指定分页中的许多列/字段,php,cakephp,pagination,cakephp-2.0,Php,Cakephp,Pagination,Cakephp 2.0,在这里,我已经浏览了containable组件和其他问题,但这似乎对我没有帮助 基本上,我将paginate设置为1,这将返回类似于 Array ( [0] => Array ( [ModelName1] => Array ( [id] => 83 [parent_id] => null [field1] => value1 ) [AssociatedModelName1] =>
Array
(
[0] => Array
(
[ModelName1] => Array
(
[id] => 83
[parent_id] => null
[field1] => value1
)
[AssociatedModelName1] => Array
(
[id] => 1
[field1] => value1
)
[children] => Array
(
[0] => Array
(
[ModelName] => Array
(
[id] => 42
[parent_id] => 83
[field1] => value1
[field2] => value2
[field3] => value3
)
[AssociatedModelName] => Array
(
[id] => 2
[field1] => value1
[field2] => value2
[field3] => value3
)
我可以通过添加
$fields => array("ModelName1.field1")
到设置数组。事实上,我将其传递给DataTable插件组件初始化的“列”,但它应该是相同的
然而,因为有这么多的子项,并且每个子项包含很多字段,所以我只想得到每个子项的“field2”
我怎样才能做到这一点?如果我指定“Children.ModelName1”,我会得到一个SQL1054错误,这是找不到的列
有什么线索吗?您必须以某种方式使用条件数组:
$this->paginate['Model'] = array(
'contain' => array(
'ChildModel' => array(
'fields' => array('ChildModel.field1', 'Childmodel.field2'),
'ChildChildModel' => array(
'fields' => array('ChildChildModel.field1', 'ChildChildModel.field2'),
)
)
)
);
您可以显示此查询的代码吗?我使用的是内置的PaginateComponent,它不是自定义查询$此->票证->递归=1$此->数据表->分页();检查