次のカテゴリテーブルがあります。
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
);
私の問題は、各親カテゴリを循環し、階層内の子も取得する関数を正確にどこでどのように構築するかわからないことです。