9

我有一个使用 Nuxt JS 和 MongoDB 构建的网站。

我想用flutter创建一个移动应用程序,但我不知道如何将flutter与MongoDB连接起来。

给我一些代码示例。

这是解决方案!(点击这里

实际上,我发布了一个关于它的博客,请随时检查解决方案!

  1. 适用于 MongoDB 和MongoDB Atlas
  2. 初学者指南
4

2 回答 2

20

导入flutter库mongo_dart并连接数据库。 mongo_dart在纯 Dart 中实现的 MongoDB 服务器端驱动程序库。

我希望下面的代码片段有帮助!

import 'package:mongo_dart/mongo_dart.dart' show Db, DbCollection;
class DBConnection {

  static DBConnection _instance;

  final String _host = "DATABASE SERVER";
  final String _port = "DATABASE PORT";
  final String _dbName = "DATABASE NAME";
  Db _db;

  static getInstance(){
    if(_instance == null) {
      _instance = DBConnection();
    }
    return _instance;
  }

  Future<Db> getConnection() async{
    if (_db == null){
      try {
        _db = Db(_getConnectionString());
        await _db.open();
      } catch(e){
        print(e);
      }
    }
    return _db;
  }

  _getConnectionString(){
    return "mongodb://$_host:$_port/$_dbName";
  }

  closeConnection() {
    _db.close();
  }

}
于 2020-01-27T05:17:27.507 回答
10

Sandeep Krishna 的回答是正确的,但如果您已经有 Nodejs 后端,那么公开 REST API 并使用 http、dio 或其他类似包连接 Flutter。由于将前端直接连接到数据库是不好的。它只是一个建议。

于 2020-01-27T06:57:36.043 回答