-
Регистрация и аутентификация: Поддерживается регистрация и вход с помощью логина и пароля, а также с помощью социальных сетей (GitHub, Google, ВКонтакте)
-
Управление постами: Авторизованные пользователи могут создавать, редактировать и удалять посты. Каждый пост может включать фотографию питомца, его породу, описание и характер.
-
Профили пользователей: Реализован кастомный пользовательский профиль на основе AbstractUser, где пользователи могут управлять своей информацией.
-
Система комментариев: Пользователи могут оставлять комментарии к постам и взаимодействовать друг с другом.
-
Поиск и сортировка постов: Возможность поиска по сайту и сортировка постов по количеству комментариев с помощью кастомного шаблонного тега.
-
Пагинация: Удобная пагинация для просмотра большого количества постов.
-
Защита и безопасность:
- Защита от спама при помощи CAPTCHA в форме авторизации.
- Сброс и изменение пароля через уникальную ссылку, отправляемую на email пользователя.
-
Кэширование: Используется Redis для кэширования страниц с шаблонами, что повышает производительность.
-
Оптимизация запросов: Django Debug Toolbar используется для оптимизации SQL запросов и устранения дубликатов запросов.
-
Фикстуры данных: Используются для загрузки начальной базы данных.
-
Клонируйте репозиторий:
git clone https://github.com/SergeiMischenko/project_2_Django_site.git
-
Перейдите в папку проекта:
cd project_2_Django_site
-
Установите виртуальное окружение и активируйте его:
python -m venv env source env/bin/activate # Для Linux и macOS env\Scripts\activate # Для Windows
-
Установите необходимые зависимости:
pip install -r requirements.txt
-
Выполните миграции базы данных:
python manage.py migrate
-
Загрузите начальные данные из фикстур:
python manage.py loaddata mysite_data.json
-
Запустите сервер разработки:
python manage.py runserver
-
Доступ к приложению:
После завершения всех вышеуказанных шагов, приложение будет доступно по адресу http://127.0.0.1:8000.
Главная страница | Поиск | Просмотр поста и комментарии |
Регистрация | Авторизация | Новая статья |
Профиль | Изменение пароля | Восстановление пароля |