Этот проект представляет собой веб-приложение для онлайн-выставки котят, созданное с использованием Django и Django REST Framework. Приложение позволяет управлять котятами, их породами, фильтровать по породам, а также оценивать их пользователями.
Доступ к API осуществляется через REST-интерфейс и Django Admin.
-
Модели котят: Порода, цвет, возраст, описание, владелец.
-
Породы котят: Название породы.
-
Рейтинги котят: Пользовательская оценка котят.
-
Фильтрация: Фильтрация котят по породам и Пагинация.
-
Административный интерфейс: Удобное редактирование данных через Django Admin.
-
Документация: Удобная документация к API Swagger.
-
Тесты: Покрытие тестами Сериализаторов и Представлений(View).
-
REST API:
- Список котят
- Детальная информация по котенку
- Добавление/Изменение/Удаление котенка его владельцем
- Оценка котят пользователями (авторизованными)
- Добавление новой породы администратором
- Аутентификация с помощью JWT Токена
-
Клонируйте репозиторий:
git clone https://github.com/SergeiMischenko/API_cat_exhibition.git
-
Перейдите в папку проекта:
cd API_cat_exhibition
-
Установите виртуальное окружение и активируйте его:
python -m venv env source env/bin/activate # Для Linux и macOS env\Scripts\activate # Для Windows
-
Установите необходимые зависимости:
pip install -r requirements.txt
-
Откройте файл .env и заполнить его своими данными
SECRET_KEY = 'your-secret-key'
-
Выполните миграции базы данных:
python manage.py migrate
-
Загрузите тестовые данные (фикстуры):
python manage.py minimal_data_with_users
-
Запустите сервер разработки:
python manage.py runserver
-
Доступ к приложению:
После завершения всех вышеуказанных шагов, приложение будет доступно по адресу http://127.0.0.1:8000/api/.
Документация к API - Swagger находится по адресу http://127.0.0.1:8000/api/docs/.
- Получить список котят:
/api/
- Получить детальную информацию по котенку:
/api/*id*/
- Получить список пород:
/api/breeds/
- Добавить новую породу:
/api/breeds/
- Оценить котенка:
/api/*id*/rate/
Пароли к тестовым пользовтелям:
- Суперпользовтель - login:
admin
, password:admin
- Пользователь 1 - login:
user1
, password:user1
- Пользователь 2 - login:
user2
, password:user2
- Получить список котят:
Список котят по фильтру породы в API | Документация к API Swagger | Детальный просмотр котенка с id - 1 |