Древовидное меню для панели администратора
Попробую первый пост по разработке. Специально для одного моего подписчика который пишет на Delphi)
И так, делал древовидное меню для интернет-магазина, с возможностью добавления категорий "на лету", но план изменился и, дабы труд не пропадал, предам его общественности, может даже кому пригодится.
Пример можно посмотреть тут
Проект на .net Core 3.1 в среде разработки Visual Studio 2019.
- Создаем проект на .net mvc (Core или .net Framework не имеет значения);
- Добавляем модель категории;
- Создаем папку для хранения класса Html-хелпера который будет формировать разметку для нашего меню (в моем случае это App_Code);
- Добавляем класс для хелпера (у меня это TreeViewMenuHelper.cs) и добавляем туда код:
- Теперь для вывода меню на странице нам достаточно указать строку: @Html.CreateBaseList(Model), а компилятор сделает все за нас и создаст html-разметку
- Мой проект имеет такую структуру:
- Затем создадим объекты Category, без них ну вообще ни как). Я добавил их просто в контроллере, при обращении к Index мы создаем объекты и передаем их в представление.
Отступление для тех кто первый раз или пишет на Delphi:
Теперь у нас готова реализация MVC:
model - мы описали объект Category.
view - представление, то что видит пользователь.
controller - контроллер, который работает связующим звеном и обрабатывает запросы, например передать в представление категорию с Id = 1 или Id = 2, или все вместе.
Почему в аббревиатуре MVC "С" - поставили последней не знаю, мне кажется это не справедливо по отношению к ней.
- Теперь нам следует добавить стили в файлы стилей (у меня site.css) и скрипты в файлы скриптов (у меня site.js), не перепутать.
- CSS и JavaScript (берем по ссылке в примере).
- И получаем такое меню.
Ссылка на депозитарий GiHub (Узнал, что депозитАрий пишется через "А", день не зря прожил)