Django-проект API для магазина продуктов
- Создание, редактирование, удаление категорий и подкатегорий товаров в админке.
- Подкатегории связаны с родительской категорией.
- Добавление, изменение, удаление продуктов в админке.
- Продукты относятся к определенной подкатегории и соответственно категории.
- Эндпоинты:
- GET http://127.0.0.1:8000/api/categories/ - просмотр всех категорий с подкатегориями (предусмотрена пагинация);
- GET http://127.0.0.1:8000/api/products/ - просмотр всех продуктов (предусмотрена пагинация);
- GET http://127.0.0.1:8000/api/cart/{id}/ - просмотр состава корзины с
подсчетом количества товаров и суммы стоимости товаров в корзине;
- POST http://127.0.0.1:8000/api/cart/{id}/cart_item/ - добавление нового товара в корзину;
- PATCH http://127.0.0.1:8000/api/cart/{id}/cart_item/ - изменение количества товара.
Обязательный параметр:
- count - количество ("-" если необходимо убавить количество, при уменьшении количеств продукта до 0 - продукт удаляется из корзины));
- DELETE http://127.0.0.1:8000/api/cart/{id}/cart_item/ - полная отчистка корзины.
- Эндпоинты для регистрации и авторизации:
- http://127.0.0.1:8000/api/auth/users/ - регистрация нового пользователя.
Обязательные параметры:
- username
- password
- http://127.0.0.1:8000/api/auth/jwt/create/ - создание JWT-токена.
Обязательные параметры:
- username
- password
- http://127.0.0.1:8000/api/auth/users/ - регистрация нового пользователя.
Обязательные параметры:
- Python
- Django REST Framework
- JWT + Djoser
- Клонировать проект, создать и активировать виртуальное окружение, установить зависимости
Для Windows:
git clone [email protected]:elityaev/Django-shop.git
cd Django-shop
python -m venv venv
venv/Scripts/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
Для Linux:
git clone [email protected]:elityaev/Django-shop.git
cd Django-shop
python3 -m venv venv
source venv/bin/activat
python3 -m pip install --upgrade pip
pip install -r requirements.txt
- Перейти в папку
/src
, применить миграции
cd src
python manage.py migrate
- Создать суперпользователя и через админку заполнить БД (категории, подкатегории, продукты)
python manage.py createsuperuser
- Запустить проект
python manage.py runserver
http://127.0.0.1:8000/swagger/
Автор Литяев Евгений