Это небольшое веб-приложение на Flask, которое предоставляет RESTful API для управления списком задач (TODO list).
[TOC]
-
Создание задачи:
- Метод: POST
- URL:
/tasks/
- Параметры запроса: JSON-объект с полями
title
(строка) иdescription
(строка, опционально). - Ответ: JSON-объект с полями
id
,title
,description
,created_at
,updated_at
.
-
Получение списка задач:
- Метод: GET
- URL:
/tasks/
- Ответ: JSON-список задач, где каждая задача представляет собой JSON-объект с
полями
id
,title
,description
,created_at
,updated_at
.
-
Получение информации о задаче:
- Метод: GET
- URL:
/tasks/<id>
- Ответ: JSON-объект с полями
id
,title
,description
,created_at
,updated_at
.
-
Обновление задачи:
- Метод: PATCH
- URL:
/tasks/<id>
- Параметры запроса: JSON-объект с полями
title
(строка, опционально) иdescription
(строка, опционально). - Ответ: JSON-объект с полями
id
,title
,description
,created_at
,updated_at
.
-
Удаление задачи:
- Метод: DELETE
- URL:
/tasks/<id>
- Ответ: Сообщение об успешном удалении.
- Python 3.12
- MySQL
- Клонируйте репозиторий:
git clone https://github.com/ваш-репозиторий/todo-app.git
cd todo-app
- Создайте виртуальное окружение и активируйте его:
python -m venv venv
source venv/bin/activate # Для Windows: venv\Scripts\activate
- Установите зависимости:
pip install -r requirements.txt
- Настройте базу данных: Создайте базу данных MySQL и настройте переменные окружения для подключения:
export DATABASE_URL='mysql+pymysql://user:password@localhost/todo_db'
- Выполните миграции базы данных:
flask db upgrade
- Запустите приложение:
flask run
Приложение будет доступно по адресу: http://localhost:5000/
Чтобы запустить тесты, выполните следующую команду:
python -m unittest discover -s tests
Документация Swagger доступна по адресу: http://localhost:5000/