Tree menu - веб-приложение для демонстрации и дальнейшего использования древовидного меню, создано на стандартных библиотеках Python и Django! Меню реализовано через template tag, хранится в БД, и редактируется в стандартной админ панели Django.
- Клонируем репозиторий git@github.com:AntonNadein/tree_menu.git
- Устанавливаем зависимости pyproject.toml
poetry install
- Применяем миграции для базы данных
python manage.py migrate
- Для тестирования функционала добавляем данные
python manage.py add_start_data
Запуск:
- Запуск Django командой
python manage.py runserver
- Если вы все сделали правильно, то увидите работающее приложение по ссылке http://127.0.0.1:8000/
- В шаблон добавьте тег
{% load menu_tag %}
он подгрузит функционал на вашу страницу - В шаблоне добавьте теги
{% draw_menu 'название_меню' %}
они добавят меню из вашей базы данных ориентируясь на групповое название название_меню (в тестовом проекте используется тег {% draw_menu 'menu_1' %}).
-
blog - приложение управления своими записями и просмотра записей. Содержит модели, формы, представления с основными CRUD операциями.
-
users - приложение управления пользователями и группами. Содержит модели, формы, представления с основными CRUD операциями с пользователями. В данном приложении реализована система регистрации(с подтверждением своего email) и аутентификации пользователей, так же реализован функционал восстановления пароля.
- config - настройки проекта(settings.py) и настройки маршрутов (urls.py).
Подготовка к запуску проекта:
- Установите Docker.
- Установите Docker Compose.
- Убедитесь, что Docker запущен и работает.
Запуск проекта
- Клонируйте репозиторий:
git@github.com:AntonNadein/tree_menu.git
- Запустите проект, выполнив команду для запуска в фоновом режиме:
docker-compose up -d
или
docker-compose up -d --build
После запуска веб-приложение будет доступно по адресу: http://localhost:8000 с минимальным набором тестовых данных для демонстрации.
Дополнительные команды:
- Для просмотра запущенных контейнеров:
docker-compose ps
- Для просмотра логов всех контейнеров:
docker-compose logs
- Для остановки сервисов:
docker-compose down
coverage run manage.py test
coverage report
Test coverage 96%
Этот проект не имеет лицензий.