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
bme280 bmp280 gps mpu-6050 options stm32 ssd1331 ssd1306 eb-500 3d-printer soldering tim mpu-9250 dma watchdog piezo exti web raspberry-pi docker ngnix solar bluetooth foc html css brushless flask dc-dc capture gpio avr rs-232 mpx4115a atmega mongodb st-link barometer pwm nvic git java-script programmator dht11 hih-4000 pmsm encoder max1674 smd sensors rtc adc lcd motor timer meteo examples i2c usb flash sms rfid python esp8266 servo books bldc remap eeprom bkp battery ethernet uart usart displays led websocket nodemcu wifi
Архіви