Connessione a MongoDB in Angel3

Mattepuffo's logo
Connessione a MongoDB in Angel3

Connessione a MongoDB in Angel3

In questo articolo vediamo come connetterci a MongoDB in Angel3.

Visto che ho avuto qualche problema di dipendenze, le ho reinstallate da "zero" rispetto ai precedenti articoli:

dart pub add angel3_framework mongo_dart

Detto ciò qui sotto un esempio di codice:

import 'package:angel3_framework/angel3_framework.dart';
import 'package:angel3_framework/http.dart';
import 'package:mongo_dart/mongo_dart.dart';

Future<void> main() async {
  var app = Angel();
  var http = AngelHttp(app);

  final db = await Db.create('mongodb://localhost:27017/testdb');
  await db.open();

  final utentiCollection = db.collection('utenti');

  app.get('/utenti', (req, res) async {
    await utentiCollection.insertOne({'email': 'anna@example.com'});
    await utentiCollection.insertOne({'email': 'luca@example.com'});

    final utenti = await utentiCollection.find().toList();

    final mapped = utenti
        .map((doc) => {
              'id': doc['_id'].toHexString(),
              'email': doc['email'],
            })
        .toList();

    return res.json({'utenti': mapped});
  });

  await http.startServer('localhost', 3000);
  print('Server avviato su http://localhost:3000');
}

Io ho creato una sola rotta in cui aggiungo dei records e li leggo.

Vi lascio come esercizio quello di creare una rotto apposita per l'aggiunta.

Enjoy!


Condividi

Commentami!