/api_photo_album

API for photo album

Primary LanguageHTML

Проект Photo Album

Описание

Проект создан для публикации фотоальбомов пользователей.

Пользователь создает свой фотоальбом и может добавить в него свои фотографии. У каждого пользователя может быть несколько своих фотоальбомов. Фотографиям можно назначать теги для более быстрого поиска. Пользователю доступны только свои фотоальбомы и фотографии.

Техническое описание

  • Реализован на базе RestAPI.
  • Технология - Django Rest Framework
  • Документация по ресурсам на http://127.0.0.1:8000/redoc/

Стек технологий

Python 3.9.4, Django 3.1+, Django REST Framework, SQLite3, Simple JWT, Django Filter, Django Taggit

Установка

Создайте виртуальное окружение:

python3 -m venv venv

Активируйте его:

source venv/bin/activate

Используйте pip, чтобы установить зависимости:

pip install -r requirements.txt

После создайте в корневой директории файл с названием ".env" и поместите в него:

SECRET_KEY=любой_секретный_ключ_на_ваш_выбор

Не забудьте применить все миграции:

python manage.py makemigrations
python manage.py migrate

И запускайте сервер:

python manage.py runserver

Как импортировать данные в БД для тестирования.

В файле dump.json импортированы тестовые данные. Для наполнения базы данных необходимо загрузить эти данные:

python manage.py loaddata dump.json 

Чтобы открыть админку, запустите сервер и перейдите по ссылке:

http://127.0.0.1:8000/admin/

Для входа используйте:

login = admin
password = admin

Данные для тестовых пользователей:

login = User_1
password = user123456
login = User_2
password = user234567

Документация

Чтобы открыть документацию, запустите сервер и перейдите по ссылке: http://127.0.0.1:8000/redoc/ Покрытие тестами можно посмотреть в папке: api_photo_album/htmlcov/index.html