我按照书中的文档来使用树行为。
一切看起来都很好。parent_id、lft 和 rght 已正确保存,但当我调用时:
$this->Model->generateTreeList()
返回的列表是平坦的,即:
array(
(int) 8 => 'p1',
(int) 11 => 'child of p1',
(int) 9 => 'p2',
(int) 2 => 'child of p2',
)
还有什么我需要注意的吗?
我按照书中的文档来使用树行为。
一切看起来都很好。parent_id、lft 和 rght 已正确保存,但当我调用时:
$this->Model->generateTreeList()
返回的列表是平坦的,即:
array(
(int) 8 => 'p1',
(int) 11 => 'child of p1',
(int) 9 => 'p2',
(int) 2 => 'child of p2',
)
还有什么我需要注意的吗?
它按预期工作(根据文档)。generateTreeList 返回数组,其中键是 id,显示字段是值。
generateTreeList($conditions=null, $keyPath=null, $valuePath=null, $spacer= '_', $recursive=null)
您可以指定$spacer
参数,并获得类似 i.ex 的结果:
array(
1 => 'p1',
2 => '_p2',
3 => '_p3',
4 => '_p4',
5 => '__p5',
);
该列表是“扁平的”,但带有间隔。如果你想有分层嵌套数组,你必须使用:$this->Model->find('threaded')