Thanks to visit codestin.com
Credit goes to github.com

Skip to content

andmerk93/django-uptrader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

django-uptrader

Описание

Проект на чистом Django и стандартной библиотеке Python, сделан в качестве тестового задания в 2024.

Проект состоит из двух Django-приложений.

Main - django-app, который реализовывает древовидное меню, соблюдая следующие условия:

  1. Меню реализовано через template tag
  2. Все, что над выделенным пунктом - развернуто. Первый уровень вложенности под выделенным пунктом тоже развернут.
  3. Хранится в БД.
  4. Редактируется в стандартной админке Django
  5. Активный пункт меню определяется исходя из URL текущей страницы
  6. Меню на одной странице может быть несколько. Они определяются по названию.
  7. При клике на меню происходит переход по заданному в нем URL. URL может быть задан как явным образом, так и через named url.
  8. На отрисовку каждого меню требуется ровно 1 запрос к БД

Update - django-app, который позволяет вносить в БД меню (одно или несколько) через админку, и нарисовать на любой нужной странице меню по названию. {% draw_menu 'main_menu' %}

UPD: Проект недоделан, и доделан, скорее всего не будет.

Требования:

  • Python 3
  • Django 5
  • и их зависимости

Указаны минимально требуемые версии, однако, сервис работает и с актуальными (возникают проблемы с автотестами).

Установка на тестовом стенде:

На машине должен быть установлен Python актуальной версии (тестировалось на 3.11)

Клонировать репозиторий на машину, с которой будет будет запускаться сервис (либо по SSH-ссылке, либо скопировать и распаковать zip-архив)

git clone https://github.com/andmerk93/django-uptrader.git

Перейти в директорию с проектом

cd django-uptrader

Развернуть виртуальное окружение python в папке с проектом (django-uptrader)

python -m venv venv

Активировать виртуальное окружение.

Для linux/unix:

source ./venv/bin/activate 

Для Windows, должно быть разрешено выполнение скриптов Powershell:

venv\Scripts\activate

Установить Django и заввисимости (тестировалось на Django 5):

pip install Django

Перейти в папку ./uptrader

cd ./uptrader

Дальнейшие команды будут выполняться отсюда

Создать необходимые таблицы в базе данных (нет необходимости делать makemigrations, описания миграций добавлены в репозиторий):

python manage.py migrate

Запустить проект:

py manage.py runserver 80

Тестовый сервер должен запуститься, и быть доступен по http://localhost/ Остановка сервера выполняется по Ctrl+C

Для теста панели администратора нужно создать пользователя с правами администратора и следовать инструкциям в консоли.

py manage.py createsuperuser

Панель администратора будет доступна по http://localhost/admin/

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published