Skip to content

r4cy/django_sprint4

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Blogicum — платформа для публикации и обсуждения постов на Django

Blogicum — современная блог-платформа, созданная с использованием фреймворка Django.
Реализует весь базовый функционал: работа с пользователями, публикации, категории, комментарии, медиафайлы, а также улучшенный UX за счёт кастомных страниц ошибок и пагинации.

Проект построен с опорой на лучшие практики Django и демонстрирует навыки работы с CBV, FBV, формами, системой авторизации и админкой.


🔧 Реализованные возможности

🔐 Аутентификация и профиль

  • Регистрация, вход, выход, смена пароля
  • Профиль пользователя: /profile/<username>/
  • Редактирование личных данных
  • Контроль прав доступа: только автор может редактировать/удалять свои посты и комментарии

📝 Публикации

  • Создание и редактирование постов
  • Поддержка изображений
  • Отложенные публикации по дате
  • Привязка к категориям и локациям
  • Пагинация (по 10 постов) на главной, в профиле и по категориям

💬 Комментарии

  • Комментирование постов (только для авторизованных)
  • Редактирование и удаление своих комментариев
  • Комментарии отсортированы по дате (от старых к новым)
  • Количество комментариев отображается в списках постов

⚙️ Интерфейс и навигация

  • Кастомные страницы ошибок: 403, 404, 500
  • Статичные страницы: «О проекте», «Правила» (реализованы на CBV)
  • Один шаблон используется и для создания, и для редактирования поста
  • Чёткая структура шаблонов и маршрутов

🛠 Администрирование

  • Управление категориями и локациями через Django admin
  • Отложенные и снятые с публикации посты видны только их авторам

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

Технология Назначение
Python 3.10+ Язык программирования
Django 3.2 Веб-фреймворк
SQLite База данных по умолчанию
HTML + DTL Шаблонизатор и структура интерфейса
Django Auth Система пользователей и авторизация
CBV + FBV Представления: классы и функции
Bootstrap 5 Стилизация интерфейса
Email (file backend) Фиктивная отправка писем в sent_emails/

🚀 Установка и запуск

  1. Клонируйте репозиторий:
git clone <адрес_репозитория>
cd blogicum
  1. Создайте и активируйте виртуальное окружение:
python -m venv venv
source venv/bin/activate      # для Linux/MacOS
venv\Scripts\activate         # для Windows
  1. Установите зависимости:
pip install -r requirements.txt
  1. Примените миграции:
python manage.py migrate
  1. Создайте суперпользователя:
python manage.py createsuperuser
  1. Запустите сервер разработки:
python manage.py runserver

Откройте в браузере: http://127.0.0.1:8000/

📁 Примечания

  • Все письма, отправленные через форму восстановления пароля, сохраняются в директории sent_emails/ (не входят в репозиторий).

  • Шаблоны ошибок расположены в templates/pages/.

  • Используется как CBV (для статичных страниц), так и FBV (для логики блога и комментариев).

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published