findBy<T extends Model> static method
Future<T?>
findBy<
T extends Model>({ - required String field,
- required dynamic value,
})
Implementation
static Future<T?> findBy<T extends Model>({required String field, required dynamic value}) async {
try {
final constructor = _jsonConstructors[T];
if (constructor == null) return null;
final tableName = _getTableName<T>();
final records = await _database.execute(Sql.named('SELECT * FROM "$tableName" WHERE $field = @$field LIMIT 1'),
parameters: { field: value},
);
if (records.isNotEmpty) {
return constructor(records.first.toColumnMap()) as T;
}
return null;
} catch (e) {
print('Postgres findBy error: $e');
return null;
}
}