Реализация веб-сервиса на базе Django
, предоставляющий CRUD REST API
для групповых денежных сборов.
- Данные хранятся в реляционной БД, взаимодействие с ней осуществляется посредством
Django ORM
. API
реализовано на базеDjango REST Framework
.- Реализовано кэширование данных, возвращаемых
GET
эндпоинтом, с обеспечением достоверности ответов. - Проект должен быть докеризирован и запускаться через
docker compose up
. - Должна присутствовать
Management command
для наполнения БД моковыми данными (несколько тысяч). - При создании Группового сбора или Платежа по сбору на почту автора/ донатера должно прийти письмо с информацией об успешном создании сбора (отправке платежа).
- Все эндпоинты соответствуют
REST
и покрыты документациейSwagger
.
- Python 3.11.5
- Django 3.2.23
- Django REST Framework 3.12.4
- Python dotenv 1.0.1
- Mimesis 16.0.0
- Redis 5.0.4
- Celery 5.4.0
Руководство по созданию переменных окружения
Руководство по развёртыванию проекта локально
http://localhost:8000/api/v1/ - Основной ресурс.
http://localhost:8000/api/v1/docs/ - Документация.
/users/ - Пользователи.
/payments/ - Платежи.
/collects/ - Сборы.
http://localhost:8000/api/v1/users/ - Регистрация.
http://localhost:8000/api/v1/auth/token/login/ - Получение токена.
Body
-> Headers
-> Key
- Authorization и Value
- Token полученный_токен для отправки любого запроса.
https://gh.atlasgo.cloud/explore/89619928 - Полная версия.
GitHub | Разработчик - Andrew Fedorchenko