Проект представляет собой социальную сеть с функционалом постов, подписок, комментариев и групп пользователей. Пользователь может создавать и редактировать свои записи, подписываться на других пользователей, оставлять комментарии и просматривать посты по группам.
- Регистрация и авторизация: пользователи могут создавать аккаунты, входить в систему, менять пароли.
- Создание постов: авторизованные пользователи могут создавать посты с текстом и изображениями.
- Комментирование: пользователи могут оставлять комментарии к постам.
- Группы: посты могут быть привязаны к группам, и пользователи могут просматривать посты по группам.
- Подписки: пользователи могут подписываться на других пользователей и получать их обновления на странице подписок.
Проект разработан с использованием следующих технологий и библиотек:
- Python 3.9 — основной язык программирования
- Django 2.2.16 — основной фреймворк для разработки приложения
- SQLite — баз данных для хранения информации
- HTML и CSS — для построения интерфейса пользователя
- Django ORM — для взаимодействия с базой данных
- Bootstrap — для стилизации компонентов пользовательского интерфейса
-
Клонируйте репозиторий:
git clone https://github.com/artemmikh/hw04_tests.git
-
Создайте и активируйте виртуальное окружение в директории с проектом:
python3 -m venv venv source venv/bin/activate # для Linux/macOS venv\Scripts\activate # для Windows
-
Установите зависимости:
pip install -r requirements.txt
-
Настройки и переменные окружения
Создайте
.env
файл в корне проекта и добавте туда -
Настройка базы данных:
Примените миграции базы данных:
python manage.py migrate
-
Запустите сервер:
python manage.py runserver
-
Создайте суперпользователя (для доступа к панели администратора):
python manage.py createsuperuser
После этого проект будет доступен по адресу http://127.0.0.1:8000
.
Панель администратора будет доступна по адресу http://127.0.0.1:8000/admin
.
Авторизованные пользователи могут создавать посты, выбрав группу и добавив изображение, используя форму на странице создания поста.
На странице профиля пользователя доступна кнопка подписки или отписки. При подписке на автора его посты будут отображаться на странице подписок текущего пользователя.
Комментарии к постам могут оставлять только авторизованные пользователи.
Панель администратора доступна по адресу /admin/
. Администратор может управлять пользователями, постами, группами и
подписками.
Проект открыт под лицензией MIT.