sqlite Flutter:我如何迭代一个可空的表并将每个行对象添加到我的对象列表中

3qpi33ja  于 2023-05-07  发布在  SQLite
关注(0)|答案(1)|浏览(127)

问题:无法无条件调用方法“query”,因为接收方可以为“null”。

1 -我已经检查了_database不为空。我该怎么办?
2 -我不知道如何将返回的Rung对象添加到mylist中。

Future<Object?> get database async {
    if (_database != null) {
      dev.log('1 My db is NOT null: $_database', name: 'db_helper.dart');

      final List<Map<String, dynamic>> maps = await _database.query('dbtable');
      return List.generate(maps.length, (i) {
        return Rung(
          rungId: maps[i]['colId'],
          name: maps[i]['colTask'] ?? 'unknown',
          done: maps[i]['colDone'] ?? 'false',
          boldTitle: maps[i]['colBold'] ?? 'false',
          info: maps[i]['colInfo'] ?? '',

        );
      });

      // Rung rung = Rung(rungId: colId, name: colTask, done: colDone.toLowerCase()=='true', boldTitle: colBold.toLowerCase()=='true', info: colInfo);
      //Rung.myList.add(rung);
vxf3dgd4

vxf3dgd41#

在这种情况下,您可以简单地使用bang !运算符,因为您可以确定database不是null

final List<Map<String, dynamic>> maps = await _database!.query('dbtable');

相关问题