Readmeшечки
parent
c01affbcb9
commit
938d41d1ea
70
README.md
70
README.md
|
@ -0,0 +1,70 @@
|
|||
# fastfood
|
||||
Fastapi веб приложение реализующее api для общепита.
|
||||
|
||||
## Описание
|
||||
Данный проект, это результат выполнения практического домашнего задания интенсива от YLAB Development. Проект реализован на фреймворке fastapi, с использованием sqlalchemy. В качестве базы данных используется postgresql.
|
||||
### Техническое задание
|
||||
|
||||
|
||||
## Возможности
|
||||
В проекте реализованы 3 сущности: Menu, SubMenu и Dish. Для каждого них реализованы 4 метода http запросов: GET, POST, PATCH и DELETE c помощью которых можно управлять данными.
|
||||
Для Menu доступен метод GET возвращающий все его SubMenu. Аналогично для SubMenu реализован метод для возврата всех Dish.
|
||||
|
||||
|
||||
## Зависимости
|
||||
- postgresql Для работы сервиса необходима установленная СУБД. Должна быть создана база данных и пользователь с правами на нее.
|
||||
- poetry - Система управления зависимостями в Python.
|
||||
|
||||
Остальное добавится автоматически на этапе установки.
|
||||
|
||||
## Установка
|
||||
Установите и настройте postgresql согласно офф. документации. Создайте пользователя и бд.
|
||||
|
||||
Установите систему управления зависимостями
|
||||
> `$ pip install poetry`
|
||||
|
||||
Клонируйте репозиторий
|
||||
> `$ git clone https://git.pi3c.ru/pi3c/fastfood.git`
|
||||
|
||||
Перейдите в каталог
|
||||
|
||||
> `$ cd fastfood`
|
||||
|
||||
> `$ poetry install --no-root`
|
||||
|
||||
Создастся виртуальное окружение и установятся зависимости
|
||||
|
||||
## Запуск
|
||||
Запуск проекта возможен в 2х режимах:
|
||||
- Запуск в режиме "prod" с ключем --run-server
|
||||
Подразумевает наличие уже созданных таблиц в базе данных(например с помощью Alembic). Манипуляций со структурой БД не происходит. Данные не удаляются.
|
||||
|
||||
- Запуск в режиме "dev" c ключем --run-test-server
|
||||
В этом случае при каждом запуске проекта все таблицы с данными удаляются из БД и создаются снова согласно описанных моделей.
|
||||
|
||||
|
||||
Для запуска проекта сначала активируем виртуальное окружение
|
||||
|
||||
> `$ poetry shell`
|
||||
|
||||
и запускаем проект в соответстующем режиме
|
||||
|
||||
>`$ python manage.py --ключ`
|
||||
|
||||
вместо этого, так же допускается и другой вариант запуска одной командой без предварительной активации окружения
|
||||
|
||||
>`$ poetry run python manage.py --ключ`
|
||||
|
||||
|
||||
## TODO
|
||||
- Добавить миграции
|
||||
- Провести рефакторинг, много дублирующего кода
|
||||
- Много чего другого :)
|
||||
|
||||
## Авторы
|
||||
- Сергей Ванюшкин <pi3c@yandex.ru>
|
||||
|
||||
## Лицензия
|
||||
Распространяется под [MIT лицензией](https://www.opensource.org/licenses/mit-license.php).
|
||||
Подробнее на русском в файле LICENSE.md
|
||||
|
Loading…
Reference in New Issue