Flask > db_class > SQLite. Пример#4
В этом примере приложения на Flask создан отдельный класс db_class, который позволяет организовать и упростить работу с таблицами базы данных. Теперь для каждой таблицы из базы данных нужно создать объект из описанного класса и прописать по 4 роута (Create, Read, Update, Delete ). В примере (пока) создан только объект client, и прописаны роуты только для него. Обратите внимание как стало легче читать содержимое файла my_ap.py
В этом примере нужно сначала создать базу данных. Для этого запустите скрипт createDB.py.
python3 ./createDB.py
Этот скрипт создаст базу данных SQLite и заполнит её данными.
После этого можно запускать пример:
python3 ./my_app.py
Откройте в браузере:
http://localhost:5000/frontend/
Фронтенд с прошлого примера не изменился. JsvaScript все пишет в консоль.
Кстати, просмотреть данные можно и по ссылкам прямо из браузера (в JSON формате, разумеется).
- Все клиенты: http://localhost:5000/client/
- Клиент с id 4 http://localhost:5000/client/4/
Немного не удобно прописывать множество роутов, если у нас будет много, очень много объектов данных (сотни). Для каждого прописывать по 4 роута будет непростительно тупо. Нужно как-то упростить этот процесс с одной стороны, а с другой оставить возможность при необходимости гибко модифицировать обработку данных для отдельных объектов данных (таблиц).
В следующем примере:
Переделаем класс чтобы было удобно описывать модель данных.
Смотри также:
- Flask. Установка и первое приложение
- Flask. JSON
- Flask + SQLite + JSON
- Flask > db_class > SQLite
- Flask. Model. ООП для работы с данными
- Flask, CORS, JSON-файл
- Flask + Vue. Финальный пример
Tags
barometer flash exti esp8266 bmp280 uart meteo bluetooth motor programmator remap examples sms i2c 3d-printer avr lcd piezo pwm nvic rs-232 mpu-9250 encoder mongodb timer mpu-6050 watchdog usart max1674 brushless python solar ethernet eb-500 mpx4115a atmega sensors git dht11 rfid displays css flask eeprom raspberry-pi wifi rtc books led ssd1306 options capture soldering bldc html websocket nodemcu tim docker bkp dma web java-script smd hih-4000 adc gpio ssd1331 bme280 st-link ngnix foc battery pmsm usb servo dc-dc stm32 gps
Архіви