openCloudflareD1 function

Future<OrmDatabase> openCloudflareD1(
  1. CloudflareEnvironment environment, {
  2. String binding = 'DB',
  3. String name = 'default',
  4. ModelRegistry? registry,
  5. ScopeRegistry? scopeRegistry,
  6. Map<String, ValueCodec> codecs = const {},
  7. bool logging = false,
  8. String? database,
  9. String tablePrefix = '',
  10. String? defaultSchema,
  11. String carbonTimezone = 'UTC',
  12. String carbonLocale = 'en_US',
  13. bool enableNamedTimezones = false,
  14. List<DriverExtension> driverExtensions = const [],
  15. List<QueryInterceptor> interceptors = const [],
})

Opens an Ormed database from a native Cloudflare D1 binding.

The binding remains owned by the Worker runtime; the returned OrmDatabase is the application-level handle that can be registered with routed_database's DatabaseManager. No generated model registry is required, although registry can be supplied for codegen-backed models.

Implementation

Future<OrmDatabase> openCloudflareD1(
  CloudflareEnvironment environment, {
  String binding = 'DB',
  String name = 'default',
  ModelRegistry? registry,
  ScopeRegistry? scopeRegistry,
  Map<String, ValueCodec<dynamic>> codecs = const {},
  bool logging = false,
  String? database,
  String tablePrefix = '',
  String? defaultSchema,
  String carbonTimezone = 'UTC',
  String carbonLocale = 'en_US',
  bool enableNamedTimezones = false,
  List<DriverExtension> driverExtensions = const [],
  List<QueryInterceptor> interceptors = const [],
}) {
  return D1Database.fromBinding(
    binding: environment.d1(binding),
    name: name,
    registry: registry,
    scopeRegistry: scopeRegistry,
    codecs: codecs,
    logging: logging,
    database: database,
    tablePrefix: tablePrefix,
    defaultSchema: defaultSchema,
    carbonTimezone: carbonTimezone,
    carbonLocale: carbonLocale,
    enableNamedTimezones: enableNamedTimezones,
    driverExtensions: driverExtensions,
    interceptors: interceptors,
  );
}