Skip to content

IlyaKorol/tm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Task Manager

Описание проекта

Task Manager - это веб-приложение для управления задачами. Пользователи могут создавать, редактировать, удалять задачи, а также отмечать их как выполненные и добавлять в избранное.

Технологии

  • Python

  • Django

  • Django REST Framework

  • Gunicorn

  • mysqlclient

Установка и запуск

Установка

  1. Клонируйте репозиторий на свой компьютер:

git clone https://github.com/IlyaKorol/tm.git

  1. Перейдите в директорию проекта:

cd tm/task_manager/task_manager

  1. Установите виртуальное окружение:

python3 -m venv [имя_окружения] например python3 -m venv myenv

  1. Активируйте виртуальное окружение:
  • На Windows:

myenv\Scripts\activate

  • На macOS/Linux:

source myenv/bin/activate

  1. Установите зависимости:

pip install -r requirements.txt

  1. Настройте базу данных в файле settings.py.

6.1. Установите базу данных:

pip install mysqlclient

Примените миграции:

python manage.py migrate

Если после этого не удалось настроить базу данных, тогда следуйте следующему алгоритму:

  • pip install mysql-connector-python

  • зайдите в файл settings.py nano task_manager/settings.py

В файле settings.py замените в DATABASES замените 'ENGINE': 'django.db.backends.mysql' на 'ENGINE': 'mysql.connector.django'

  1. Примените миграции:

python manage.py migrate

  1. Создайте суперпользователя:

python manage.py createsuperuser

Запуск

  1. Запустите локальный сервер разработки Django:

python manage.py runserver

  1. Откройте браузер и перейдите по адресу http://127.0.0.1:8000/.

API

Получение списка задач

  • URL: /api/tasks/

  • Метод: GET

  • Описание: Возвращает список всех задач.

Формат ответа:

[
  {
    "id": 1,
    "title": "Название задачи",
    "description": "Описание задачи",
    "priority": 1,
    "due_date": "2024-12-31",
    "completed": false,
    "user": 1,
    "created_at": "2024-06-05T12:00:00Z"
  },
  ...
]

Создание новой задачи

  • URL: /api/tasks/

  • Метод: POST

  • Описание: Создает новую задачу.

Параметры запроса:

  • title (обязательно): Название задачи.

  • description (опционально): Описание задачи.

  • priority (обязательно): Приоритет задачи (1 - Low, 2 - Medium, 3 - High).

  • due_date (обязательно): Дата завершения задачи (формат YYYY-MM-DD).

  • completed (опционально): Статус выполнения задачи (по умолчанию false).

Пример запроса:

{
  "title": "Новая задача",
  "description": "Описание новой задачи",
  "priority": 2,
  "due_date": "2024-12-31",
  "completed": false
}

Формат ответа:

{
  "id": 1,
  "title": "Новая задача",
  "description": "Описание новой задачи",
  "priority": 2,
  "due_date": "2024-12-31",
  "completed": false,
  "user": 1,
  "created_at": "2024-06-05T12:00:00Z"
}

Обновление задачи

  • URL: /api/tasks/<id>/

  • Метод: PUT

  • Описание: Обновляет задачу по ее ID.

Параметры запроса: Такие же, как и для создания новой задачи.

Удаление задачи

  • URL: /api/tasks/<id>/

  • Метод: DELETE

  • Описание: Удаляет задачу по ее ID.

Получение списка избранных задач

  • URL: /api/favorite-tasks/

  • Метод: GET

  • Описание: Возвращает список всех избранных задач.

Формат ответа:

[
  {
    "id": 1,
    "user": 1,
    "task": 1
  },
  ...
]

Развертывание на хостинге

Установка Gunicorn

  1. Установите Gunicorn:

pip install gunicorn

Запуск Gunicorn

  1. Запустите Gunicorn командой:

gunicorn --workers=4 task_manager.wsgi:application

Инструкция пользователя

Создание новой задачи

  1. Перейдите на страницу "Создать задачу".

  2. Заполните форму создания задачи, указав название, описание и другие необходимые данные.

  3. Нажмите кнопку "Создать", чтобы сохранить задачу.

Просмотр и редактирование задачи

  1. На главной странице отображается список всех задач.

  2. Чтобы просмотреть подробную информацию о задаче, нажмите на ее название.

  3. Для редактирования задачи нажмите кнопку "Изменить" на странице просмотра задачи.

Удаление задачи

  1. Для удаления задачи перейдите на страницу просмотра задачи.

  2. Нажмите кнопку "Удалить".

  3. Подтвердите удаление, если система запросит подтверждение.

Управление избранными задачами

  1. Чтобы добавить задачу в избранное, нажмите кнопку "Добавить в избранное" на странице просмотра задачи.

  2. Чтобы удалить задачу из избранного, нажмите кнопку "Удалить из избранного" на странице просмотра задачи.

Дополнительная информация

Если у вас есть вопросы или предложения, вы можете связаться с разработчиком по email: ilyakorol94@gmail.com.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published