如何在CakePHP中使用树排序



我想生成新的左/右值,以按"名称"ASC对我的类别进行排序。

我试过了:

$this->Category->reorder(array('id' => null, 'field' => 'name', 'order' => 'ASC', 'verify' => true));

所以,我在数据库中添加了一些类别(目前不关心父/子)。

generateTreeList给了我这个输出(按lft排序):

  • 阿拉斯加
  • 金田
  • 津巴布韦
  • 波尔斯卡
  • Francja

但我想按字母顺序排列:

  • 阿拉斯加
  • Francja
  • 金田
  • 波尔斯卡
  • 津巴布韦

所以我想使用reorder()来更改lft值。它返回true,但不处理lft/rght值。

在这种情况下,我不想使用find()来订购它——我需要它来从中列出。

为什么它不起作用的答案:

我没有检查parent_id是否有null值。取而代之的是"0"为NULL。现在它工作了,我的树是通过使用reorder()重新检索的。

最新更新