Skip to content

ricle13/FoodPlan

 
 

Repository files navigation

FoodPlan

Телеграм бот позволяет получать новые рецепты. Понравившиеся рецепты можно сохранить и просматривать в личном кабинете. Можно выбрать рецепт в соответствии с личными предпочтениями, например без глютена.

Как установить

Клонируйте код.

  • Скачайте код.
  • Установите витруальное окружение командой python -m venv venv
  • Запустите виртуальное окружение командой venv\Scripts\activate
  • Установите зависимости командой pip install -r requirements.txt
  • Создайте бота в телеграмм. (инструкция)
  • Сделайте миграцию баз данных python manage.py migrate
  • Запустите Django shell python manage.py shell
  • Наполните базу данных тестовыми данными. В шеле импортируйте парсер >>> import parser и запустите >>> parser.main()
  • Запустите бота в шеле >>> import bot >>> bot.main()
  • Отрправляйте ссылку на бота своим друзьям.

Переменные окружения

Для полноценной работы программы необходимо установить некоторые переменные окружения.

export TG_TOKEN=токен вашего бота в телеграмм
export DJANGO_ALLOW_ASYNC_UNSAFE=True

Для более удобного хранения переменных можно использовать файл .env

База данных

  • Dish - рецепт блюда (название и описание)
  • DishStep - шаг приготовления блюда
  • Product - продукт который можно использовать для приготовления блюд
  • DishProduct - продукт используемый в блюде (название и количество)
  • Tag - категория блюда или продукта (например: без глютена, без лактозы)
  • UsedTag - тег относящийся к конкретному продукту или блюду
  • UserDish - блюдо показанное пользователю
  • User - пользователь

Админка

  • Добавьте админский аккаунт python manage.py createsuperuser
  • Запустите сервер Django. pyhton manage.py runserver
  • Зайдете в админку по адресу в браузере {ваш_сайт}/admin/
  • Кликните Dishs чтобы увидеть весь список рецептов
  • Кликните на конкретный рецепт - все что относится к этому рецепту(шаги, продукты, теги) можно редактировать в экране редактирования рецепта.

Цель проекта

Код написан в образовательных целях, на курсе для разработчиков в рамках командного проекта(4 рабочих дня) dvmn.org

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.8%
  • Procfile 0.2%