Connessione a PostgreSQL in Angel3
In questo articolo vediamo come connetterci ad un db PostgreSQL in Angel3.
Abbiamo una rotta in cui inseriamo un paio di records che poi mandiamo in output in formato JSON.
Vi lascio come esercizio la creazione di una rotta apposita per recuperare i dati in POST ed aggiungere records al db.
Queste le dipendenze che ci servono:
dependencies:
angel3_framework: ^6.0.0
postgres: ^2.6.2
Qui sotto un pò di codice:
import 'package:angel3_framework/angel3_framework.dart';
import 'package:angel3_framework/http.dart';
import 'package:postgres/postgres.dart';
Future<void> main() async {
var app = Angel();
var http = AngelHttp(app);
final conn = PostgreSQLConnection(
'localhost',
5432,
'learningobjects',
username: 'learningobjects',
password: 'learningobjects',
);
await conn.open();
app.get('/utenti', (req, res) async {
await conn.query(
'INSERT INTO utenti (email) VALUES (@email)',
substitutionValues: {'email': 'mario@example.com'},
);
await conn.query(
'INSERT INTO utenti (email) VALUES (@email)',
substitutionValues: {'email': 'luisa@example.com'},
);
final results = await conn.query('SELECT id, email FROM utenti');
final utenti = results
.map((row) => {
'id': row[0],
'email': row[1],
})
.toList();
return res.json({'utenti': utenti});
});
await http.startServer('localhost', 3000);
print('Server avviato su http://localhost:3000');
}
Enjoy!
dart angel3 json database postgresql
Commentami!