Платформа создана, как сервис для размещения постов с расширенным функционалом. Все зарегистрированные пользователи получают возможность добавлять иллюстрации к постам, состоять в группе, оставлять комментарии и подписываться на других авторов. Приложение раздает статичные web страницы, сформированные на сервере. Встроена защита от CSRF. Регистрация и обработка новых пользователей реализована с применением встроенной модель users фремворка Django. Подтверждение регистрации происходит по email. Незарегистрированным пользователям страница доступна только для чтения. Хранение, добавление и редактирование записей производится в SQLite. Весь основной функционал платформы покрыт юнит-тестами. Добавлена функция кэширования главной страницы, что снижает нагрузку на сервер. Админ-зона проекта делает работу с базой данных комфортной и удобной.
Python 3.8.3 Django 2.2.16
Весь стек используемых технологий перечислен в файле requirements.txt
клонируйте репозиторий
git clone git@github.com:andrey-kolesnik-moscow/Yatube.git
создайте и активируйте виртуальное окружение
python3 -m venv venv
для Windows
source venv/Scripts/activate
для macOS или Linux
source venv/bin/activate
установите зависимости проекта
pip install -r requirements.txt
выполните миграции
python3 manage.py migrate
создайте суперпользователя для достапа к админ-зоне
python3 manage.py createsuperuser
запустите проект на локальной машине
python3 manage.py runserver
- главная страница
/
- об авторе
/about/author/
- технологии
/about/tech/
- регистрация
/auth/signup/
- авторизация
/auth/login/
- посты пользователя
/profile/<username>/
- создание поста
/create/
- редактирование поста
/posts/<post_id>/edit/
- записи группы
/group/<group_name>/
- подписка на автора
/profile/<username>/follow/
- комментарии к посту
/posts/<post_id>/
- админ-зона сайта
/admin/