Просим совета по изменению записей "меню" в таблице базы данных

Раньше я не обращался за помощью в обработке записей таблицы базы данных, пока успел. Прошу совета у ваших мудрейших людей для решения одного вопроса. У меня почти большая часть nestedSortable построила мою структуру на QCubed v4. Все работает как надо, есть еще кое-что, что нужно решить, думаю, справлюсь.

Как вы знаете, для запуска nestedSortable требуются такие записи, как here: id, parent_id, depth, left, right. Я зашел так далеко, пока запись не была удалена, поэтому я застрял с тем, как удалить "левое" и "правое" значения следующих записей по одному номеру при удалении той или иной строки в таблице базы данных. Я не могу найти подходящую точку для установки контроля или условия.

Что взять? Невозможно установить контроль или что-нибудь по записи "id" ... Хммм!

В соответствии с которым собирать массив и затем сохранять, возможно, как показано на скриншоте здесь, например:

$somearray = array(
    ['id' => "9", 'parent_id' => null, 'depth' => "0", 'left' => "10", 'right' => "11", 'text' => "Gallery"],
    ['id' => "8", 'parent_id' => null, 'depth' => "0", 'left' => "12", 'right' => "13", 'text' => "News"],
    ['id' => "5", 'parent_id' => null, 'depth' => "0", 'left' => "14", 'right' => "15", 'text' => "Statutes"],
    ['id' => "6", 'parent_id' => null, 'depth' => "0", 'left' => "16", 'right' => "21", 'text' => "Reporting"],
    ['id' => "7", 'parent_id' => "6", 'depth' => "1", 'left' => "17", 'right' => "20", 'text' => "Projects"],
    ['id' => "10", 'parent_id' => "7", 'depth' => "2", 'left' => "18", 'right' => "19", 'text' => "Calendar"]
);

Итак, чтобы я перестал сохранять изменения:

foreach ($someArray as $value) {
            $objMenu = Menu::load($value["id"]);
            $objMenu->Left = $value["left"] -1;
            $objMenu->Right = $value["right"] - 1;
            $objMenu->save();
        } 

Ты определенно умнее и можешь дать мне хороший совет.

Благодарю за любую помощь!

0 ответов

Другие вопросы по тегам