Это небольшое Django-приложение для управления продуктами через API и фронтенд-страницу. Приложение включает API для создания и получения списка продуктов, а также HTML-страницу с использованием JavaScript для взаимодействия с этим API.
- API для управления продуктами: создание и получение списка продуктов.
- Фронтенд-страница с формой для добавления нового продукта и таблицей для отображения всех продуктов.
- Используется SQLite как база данных по умолчанию.
- Backend: Django, Django Rest Framework
- Frontend: HTML, JavaScript (Fetch API)
- База данных: SQLite
- Тесты: Pytest
- Клонируйте репозиторий:
git clone git@github.com:vhg860/Product_api.git
cd
- Установите зависимости:
pip install -r requirements.txt
- Выполните миграции для базы данных:
python manage.py makemigrations
python manage.py migrate
- Запустите сервер разработки:
python manage.py runserver
- Перейдите по адресу http://127.0.0.1:8000/ для работы с приложением.
- Создает новый продукт.
- Ожидает JSON с полями: name (строка), description (текст), price (десятичное число).
- Пример запроса:
curl -X POST http://127.0.0.1:8000/api/products/ -H "Content-Type: application/json" -d '{"name": "Product1", "description": "This is a product.", "price": 10.50}'
- Возвращает список всех продуктов в формате JSON. Пример ответа:
[
{
"id": 1,
"name": "Product1",
"description": "This is a product.",
"price": 10.50
}
]
Приложение использует pytest для тестирования. Чтобы запустить тесты, выполните:
pytest
HTML-страница включает:
- Форму для создания продукта (поля: название, описание, цена).
- Таблицу для отображения всех созданных продуктов.
- Логику на JavaScript для отправки данных формы на API и обновления списка продуктов без перезагрузки страницы.