Здесь вы можете создавать свои записи, добавлять их в сообщества, подписываться на авторов и комментировать их записи.
- Регистрация с расширенным профилем и управление им (переопределение модели User с помощью AbstractUser).
- Публикация записей с изображениями.
- Публикация записей в сообщества.
- Комментарии к записям других авторов.
- Подписка на других авторов.
- Лента с записями, на которых оформлена подписка.
- Template tags, отображающие самые обсуждаемые записи, последние записи и пр.
- Для проекта написаны тесты Unittest.
- Получение, создание, обновление, удаление записей.
- Получение, создание, обновление, удаление комментариев.
- Получение списка сообществ и их информации.
- Получение списка подписок и создание подписки на авторов.
- Получение, обновление и проверка токена авторизации (JWT).
Подробней про API по ссылке
Ссылка откроется после развертывания проекта.
Клонировать репозиторий и перейти в него в терминале:
git clone https://github.com/mityasun/yatube.git
Перейдите в директорию:
cd yatube/yatube/
Cоздать образ из Docker файла:
docker build -t yatube .
Перейдите в директорию с настройками Docker-compose:
cd yatube/infra/
Создать файл .env в этой директории пропишите в нем настройки БД:
SECRET_KEY=*Секретный ключ Django*
DEBUG=*False для прода и True для тестов*
ALLOWED_HOSTS=*Список разрешенных хостов*
DB_NAME=*Имя БД*
POSTGRES_USER=*Имя пользователя БД*
POSTGRES_PASSWORD=*Пароль пользователя БД*
DB_HOST=db
DB_PORT=5432
Соберите образ из файла Docker-compose:
docker-compose up -d --build
Примените миграции:
docker-compose exec web python manage.py migrate
Соберите статику:
docker-compose exec web python manage.py collectstatic --no-input
Заполнить базу данными из копии:
docker-compose exec web python manage.py loaddata fixtures.json
Создайте суперпользователя:
docker-compose exec web python manage.py createsuperuser
Петухов Артем Github