queryFromDefinition<T extends OrmEntity> method
Returns a Query for a given ModelDefinition.
This method allows for creating a query with an explicitly provided ModelDefinition, optionally overriding its table, schema, or alias.
definition is the model definition to use for the query.
table is an optional table name override.
schema is an optional schema name override.
alias is an optional alias for the table.
Implementation
Query<T> queryFromDefinition<T extends OrmEntity>(
ModelDefinition<T> definition, {
String? table,
String? schema,
String? alias,
List<String>? scopes,
}) {
final overridden = (table == null && schema == null)
? definition
: definition.copyWith(
tableName: table ?? definition.tableName,
schema: schema ?? definition.schema,
);
return Query(
definition: overridden,
context: this,
tableAlias: alias,
globalScopesApplied: false,
ignoreAllGlobalScopes: true,
adHocScopes: scopes ?? const [],
);
}