- Клонируйте репозиторий
git clonehttps://github.com/CHRNVpy/cargo-api.git
- Перейдите в директорию репозитория
cd Cargo
- Создайте Docker контейнер
docker-compose up
- После сборки контейнера Django сервер запустится автоматически.
docker exec <название контейнера> python manage.py makemigrations
docker exec <название контейнера> python manage.py migrate
- Импортируйте данные о локациях
docker exec <название контейнера> python manage.py import_locations uszips.csv
- Сгенерируйте транспорт
docker exec <название контейнера> python manage.py generate cars <количесто машин: int>
- Сгенерируйте грузы (не обязательно)
docker exec <название контейнера> python manage.py generate cargo <количесто карго: int>
- Запустите сервис для автоматического обновления локаций машин каждые 3 минуты (не обязательно)
docker exec <название контейнера> cron
Создайте миграции
BASE URL: https://localhost:8000
ENDPOINT: POST /api/cargo_add/
Parameters:
pick_up_location
: Location's zip code (integer)delivery_location
: Location's zip code (integer)weight
: Weight of the cargo (string)description
: Description of the cargo (string)
Example Request Body:
ENDPOINT: GET /api/cargo_list/
Parameters: (optional)
weight
: Weight of the cargo (string)miles_to_cars
: Distance in miles to the cars (integer)
Example Response:
ENDPOINT: GET /api/cargo/<int:cargo_id>/
Example Response:
ENDPOINT: PUT /api/car_update/<int:car_id>/
Parameters:
current_location
: Location's zip code (integer)
Example Request Body:
ENDPOINT: PUT /api/cargo_update/<int:cargo_id>/
Parameters:
weight
: Weight of the cargo (integer)description
: Description of the cargo (string)
Example Request Body:
ENDPOINT: GET /api/cargo_delete/<int:cargo_id>/
Example Response: