MQTTListener/models/devices.go
Siegfried Siegert daa79b27ca Extend this program:
- add a database for devices
- read devices from database and present this data on a simple web/REST
interface

The code or model is from a blog entry from Alex Edward:
https://www.alexedwards.net/blog/organising-database-access
2020-08-30 07:16:50 +02:00

37 lines
638 B
Go

package models
type Device struct {
ID string
MAC string
SN string
LastMsg string
}
func (db *DB) AllDevices() ([]*Device, error) {
rows, err := db.Query("SELECT * FROM devices")
if err != nil {
return nil, err
}
defer rows.Close()
devices := make([]*Device, 0)
for rows.Next() {
device := new(Device)
err := rows.Scan(&device.ID, &device.MAC, &device.SN, &device.LastMsg)
if err != nil {
return nil, err
}
devices = append(devices, device)
}
if err = rows.Err(); err != nil {
return nil, err
}
return devices, nil
}