我有以下类别表:
ID | Category Name | Date Added | Parent
______________________________________________________________________
1 | 'Countries' | '2013-10-09 04:18:09' | 0
2 | 'Spain' | '2013-10-10 03:09:23' | 1
3 | 'Animals' | '2013-10-17 06:39:21' | 0
4 | 'Dogs' | '2013-10-16 07:31:52' | 3
5 | 'Saint-Bernard' | '2013-10-15 05:33:33' | 4
6 | 'Cats' | '2013-10-15 16:19:24' | 3
7 | 'Pitbull' | '2013-10-01 08:12:13 | 4
在我的列表视图(index.phtml)的每个页面上,我想在自定义层次结构中列出 20 个主要类别(父级 0)及其所有子级。所以结果应该是这样的:
Countries
-> Spain
Animals
-> Dogs
-> Saint-Bernard
-> Pitbull
-> Cats
在 indexAction 上的 CategoriesController 中,我构建了以下列表:
$categories = new admin_Model_DbTable_Categories();
$page = $this->_request->getParam('page');
if(empty($page)) { $page = 1; }
$query = $categories
->select()
->where("parent = 0");
$this->view->categories = $categories->paginate(
$query,
20,
$page
);
我的问题是我不知道究竟在哪里以及如何构建一个循环遍历每个父类别并使他们的孩子也处于层次结构中的函数。