Разработать API для представления структуры компании:
- Список департаментов
- Список сотрудников (как общий, так и по департаментам отдельно)
- Получения списка сотрудников + фильтр для поиска по фамилии и по id департамента
- Добавление/удаление сотрудников через API
- API для получения списка департаментов (включает искусственное поле с числом сотрудников + поле с суммарным окладам по всем сотрудникам)
- API со списком сотрудников - с пагинацией, API со списком департаментов - без пагинации
- Доступ к списку сотрудников - только для авторизованных пользователей, доступ к списку департаментов - доступен и для анонимных пользователей
- Разворачивание проекта с помощью Docker
- Документация Swagger / Redoc
- Unit тестирование
- Установлен Silk и проведена оптимизация
- Клонируйте проект из репозитория.
- Создайте файл .env в корневой директории и укажите ваши настройки.
DEBUG=1
DJANGO_SECRET_KEY=
DJANGO_ALLOWED_HOSTS=*
CORS_ALLOWED_HOSTS=http://127.0.0.1:8000 http://localhost:3000
DB_ENGINE=django.db.backends.postgresql
POSTGRES_DB=
POSTGRES_USER=
POSTGRES_PASSWORD=
DB_HOST=
- Создайте контейнер
docker-compose build
- Запустите контейнер.
docker-compose up
- Создайте суперпользователя.
docker-compose run web sh -c "python manage.py createsuperuser"
- Запуск тестов
docker-compose run web sh -c "python manage.py test"
Сервис доступен по ссылке:
http://localhost:8000/
Документация доступна по адресу:
http://localhost:8000/swagger/
http://localhost:8000/redoc/