morphMany<R extends KhademModel<R>> method

RelationDefinition<KhademModel> morphMany<R extends KhademModel<R>>({
  1. required String morphName,
  2. required String relatedTable,
  3. required R factory(),
  4. String? localKey,
  5. dynamic query(
    1. QueryBuilderInterface
    )?,
})

Implementation

RelationDefinition morphMany<R extends KhademModel<R>>({
  required String morphName,
  required String relatedTable,
  required R Function() factory,
  String? localKey,
  Function(QueryBuilderInterface)? query,
}) {
  final resolvedLocalKey = localKey ?? (this as KhademModel).primaryKey;
  return RelationDefinition<R>(
    type: RelationType.morphMany,
    localKey: resolvedLocalKey,
    foreignKey: '${morphName}_id',
    relatedTable: relatedTable,
    factory: factory,
    morphIdField: '${morphName}_id',
    morphTypeField: '${morphName}_type',
    query: query,
  );
}