Golang + Vue + SQLite #1
Якщо з якихось причин Вам не подобається Python, Flask,- ось приклад web-додатка Golang + Vue. Це абсолютна "калька" того прикладу, що був раніше зроблений на Python за допомогою Flask.
Для адаптування фронтенду, написаного на Vue, до нового бекенду на Golang знадобились мінімальні корекції. Так, абсолютно без змін фронтенду не обійшлось. Бо Golang є сильно типізованою мовою програмування і накладає деякі обмеження і ми вже не можемо робити витівки, які дозоляв слабо типізований Python.
До того ж при написанні бекенду на Golang був використаний web framework Fiber, у якого теж є деякі домовленості, які змусили трохи підкоригувати фронтенд, щоб уникнути "збочень" у написанні коду.
У цьому прикладі:
- Використана база даних SQLite. У наступному прикладі буде PostgreSQL ;)
- Для роботи з БД використовується ORM gorm
- Принцип роботи з базою - CRUD, реалізована пагінація, пошук, сортування
- Аутентифікація користувачів з використанням JWT (github.com/dgrijalva/jwt-go)
- OAuth. Також аутентифікація користувачів можлива через Facebook / Google Account (дивись як налаштувати: https://blog.avislab.com/flask-vue/example9/ налаштування у файлі oauth/config.go)
- Авторизація (права на доступ до окремих моделей роздаються так само, як і у попередніх прикладах. Дивись файл access.json)
- AutoMigrate - виконується при старті додатка, а не окремою командою як у прикладі на Python
- Завантаження файлів
Як переглянути приклад?
Варіант 1 (Не потребує встановлення Golang та модулів):
- Завантажте архів і розпакуйте його у будь яку директорію на Вашому комп'ютері.
- Запустіть бінарний файл main.
- Відкрийте браузер за посиланням http://localhost:5000/frontend/
Варіант 2 (потребує встановленого Golang):
- Завантажте архів і розпакуйте його у будь яку директорію на Вашому комп'ютері.
- У директорії з файлом main.go виконайте команду go mod tidy
- Запустіть додаток командою go run ./main.go
- Відкрийте браузер за посиланням http://localhost:5000/frontend/
login: admin
password: admin
Приємного перегляду.
Недавні записи
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
- U-FOC - Векторне керування безколекторними моторами
- FOC - своя реалізація векторного керування. Підбиваю підсумки 2022 року
- Конструктор регуляторів моторів. Підбиваю підсумки 2022 року.
- Чому трифазні мотори стали такими популярними?
Tags
html uart pmsm hih-4000 mpu-9250 soldering dc-dc ethernet mpx4115a foc programmator ssd1306 bmp280 examples java-script raspberry-pi tim servo books eb-500 mongodb nodemcu docker wifi lcd adc max1674 dht11 python ssd1331 mpu-6050 remap rtc piezo solar displays led web css options dma gpio usart sms rfid esp8266 i2c 3d-printer usb pwm bldc atmega sensors barometer rs-232 git websocket motor meteo encoder bluetooth brushless timer watchdog eeprom battery st-link ngnix nvic smd stm32 flask gps capture avr bme280 flash bkp exti
Архіви