Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Вывод дерева nested sets из ORM MPTT
http://forum.kohanaframework.su/viewtopic.php?f=33&t=551
Страница 1 из 1

Автор:  rain2 [ 14 янв 2013, 07:14 ]
Заголовок сообщения:  Вывод дерева nested sets из ORM MPTT

Есть категории с различными уровнями вложенности , как их вывести в список и где это лучше сделать, в контроллере или в шаблоне(виде)?
Пробовал рекурсией но выводит только категории с 0 уровнем вложенности, в чем проблема?
Код:
    public function build_tree($cats, $parent_id)
    {
        if (is_array($cats) and isset($cats[$parent_id]))
        {
            $tree = '<ul>';
            foreach ($cats[$parent_id] as $cat)
            {
                $tree .= '<li>' . html::anchor('catalog/cat/c' . $cat->id, $cat->title, array('class' => 'list'));
               
                $tree .= $this->build_tree($cat, $cat->id);
                $tree .= '</li>';
            }
            $tree .= '</ul>';
        }
        else
            return null;
        return $tree;

    }


Код:
 $categories = ORM_MPTT::factory('category')->fulltree()->as_array();
        //$cats = array();
        foreach ($categories as $row)
        {
            $cats[$row->parent_id][] = $row;
        }
        $s=$this->build_tree($cats, '0');
        $this->template->s = $s;

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/