doniyorbekm
@doniyorbekm
Yii-шник

Как выбрать все вложенные категории из БД?

Привет всем! Есть интересная задачка, не могу довести до конца.
1. Есть БД с таблицей doc_structure. Там хранятся наименования и зависимости отделов организации. Вот скрин:
5a9d8a66c4ab8183951272.png
2. Я написал код, который вытаскивает и формирует массив данных об отделах. Вот код:
public $data;
public $tree;

$this->data = Structure::find()->asArray()->indexBy('id')->all();

3. Есть функция, которая формирует дерево отделов с неограниченной вложенностью. Вот метод:
protected function getTree() {
        $tree = [];
        foreach ($this->data as $id => &$node) {
            if(!$node['parent_id'])
                $tree[$id] = &$node;
            else
                $this->data[$node['parent_id']]['childs'][$node['id']] = &$node;
        }
        return $tree;
    }


Теперь, внимание, задача! Как и куда передавать параметры, чтобы получить массив вложенности отделов только для конкретного отдела? Т.е., предположим, я хочу только все подчинённые отделы - отдела с ID = 3 (IT департамента). По идее я должен получить массив вложенности IT департамент->Отдел администрирования->СПСС
  • Вопрос задан
  • 62 просмотра
Пригласить эксперта
Ответы на вопрос 1
@oxidmod
yiiframework.ru/forum/viewtopic.php?t=7129

Для более удобных и эффективных выборок лучше использовать NestedSet
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Badoo Development Москва
от 140 000 до 180 000 руб.
Badoo Development Москва
от 180 000 до 250 000 руб.
от 90 000 до 150 000 руб.
16 авг. 2018, в 12:52
100000 руб./за проект
16 авг. 2018, в 12:43
3000 руб./за проект
16 авг. 2018, в 12:11
100 руб./за проект