findByUUID<T extends Model> static method

Future<T?> findByUUID<T extends Model>(
  1. String uuid
)

Implementation

static Future<T?> findByUUID<T extends Model>(String uuid) async {
  try {
    final constructor = _jsonConstructors[T];
    if (constructor == null) return null;

    final tableName = _getTableName<T>();
    final result = await _database.execute(Sql.named('SELECT * FROM "$tableName" WHERE uuid = @uuid LIMIT 1'), parameters: {'uuid': uuid});

    if (result.isNotEmpty) {
      return constructor(result.first.toColumnMap());
    }
    return null;
  } catch (e) {
    return null;
  }
}