Skip to content

NikolayTishenko/foodgram-project-react

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Адрес сайта: http://51.250.73.84/

Админка:

Пользователи для теста:

Проект Foodgram – Продуктовый помощник

На этом сервисе пользователи смогут публиковать рецепты, подписываться на публикации других пользователей, добавлять понравившиеся рецепты в список «Избранное», а перед походом в магазин скачивать сводный список продуктов, необходимых для приготовления одного или нескольких выбранных блюд.

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

Python Django Django REST Framework PostgreSQL Nginx gunicorn docker GitHub%20Actions Yandex.Cloud

Что могут делать неавторизованные пользователи

  • Создать аккаунт.
  • Просматривать рецепты на главной.
  • Просматривать отдельные страницы рецептов.
  • Просматривать страницы пользователей.
  • Фильтровать рецепты по тегам.

Что могут делать авторизованные пользователи

  • Входить в систему под своим логином и паролем.
  • Выходить из системы (разлогиниваться).
  • Менять свой пароль.
  • Создавать/редактировать/удалять собственные рецепты
  • Просматривать рецепты на главной.
  • Просматривать страницы пользователей.
  • Просматривать отдельные страницы рецептов.
  • Фильтровать рецепты по тегам.
  • Работать с персональным списком избранного: добавлять в него рецепты или удалять их, просматривать свою страницу избранных рецептов.
  • Работать с персональным списком покупок: добавлять/удалять любые рецепты, выгружать файл с количеством необходимых ингредиентов для рецептов из списка покупок.
  • Подписываться на публикации авторов рецептов и отменять подписку, просматривать свою страницу подписок.

Что может делать администратор

Администратор обладает всеми правами авторизованного пользователя. Плюс к этому он может:

  • изменять пароль любого пользователя,
  • создавать/блокировать/удалять аккаунты пользователей,
  • редактировать/удалять любые рецепты,
  • добавлять/удалять/редактировать ингредиенты.
  • добавлять/удалять/редактировать теги.

Запуск проекта в контейнерах

  • Клонирование удаленного репозитория
git clone https://github.com/Ulyana819/foodgram-project-react.git
  • В директории /infra создайте файл .env, с переменными окружения
    DB_ENGINE=django.db.backends.postgresql  # указываем, что работаем с postgresql 
    DB_NAME=postgres  # имя базы данных 
    POSTGRES_USER=postgres  # логин для подключения к базе данных 
    POSTGRES_PASSWORD=postgres  # пароль для подключения к БД (установите свой)
    DB_HOST=db  # название сервиса (контейнера) 
    DB_PORT=5432  # порт для подключения к БД
    SECRET_KEY=KEY # ваш ключ
  • Сборка и развертывание контейнеров
docker-compose up -d --build
  • Выполните миграции, соберите статику, создайте суперпользователя
docker-compose exec web python manage.py makemigrations
docker-compose exec web python manage.py migrate
docker-compose exec web python manage.py createsuperuser
  • Наполните базу данных ингредиентами
docker-compose exec backend python manage.py load_ing

Ресурсы проекта:

.../api/users/ - эндпоинт пользователей;
.../api/recipes/ - эндпоинт рецептов;
.../api/ingredients/ - эндпоинт ингредиентов;
.../api/tags/ - эндпоинт тэгов;
.../api/ingredients/ - эндпоинт рецептов;
.../admin/ - эндпоинт админки сайта;
.../api/auth/ - действия с djoser авторизацией;

Автор

Тищенко Н.Н.

About

Foodgram project template

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published