Skip to content

Abstract Class: MultiModelRelation<Parent, Related, RelatedClass> ​

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:9

Extends ​

Extended by ​

Type Parameters ​

Parent ​

Parent extends Model = Model

Related extends Model = Model

RelatedClass ​

RelatedClass extends ModelConstructor<Related> = ModelConstructor<Related>

Constructors ​

Constructor ​

new MultiModelRelation<Parent, Related, RelatedClass>(parent, relatedClass, foreignKeyName?, localKeyName?): MultiModelRelation<Parent, Related, RelatedClass>

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:14

Parameters ​

parent ​

Parent

relatedClass ​

RelatedClass

foreignKeyName? ​

string

localKeyName? ​

string

Returns ​

MultiModelRelation<Parent, Related, RelatedClass>

Overrides ​

Relation.constructor

Properties ​

protected optional _related?: Related | Related[] | null

Defined in: packages/soukai/src/models/relations/Relation.ts:30

Inherited from ​

Relation._related


deleteStrategy ​

deleteStrategy: RelationDeleteStrategy = null

Defined in: packages/soukai/src/models/relations/Relation.ts:29

Inherited from ​

Relation.deleteStrategy


enabled ​

enabled: boolean = true

Defined in: packages/soukai/src/models/relations/Relation.ts:28

Inherited from ​

Relation.enabled


foreignKeyName ​

foreignKeyName: string

Defined in: packages/soukai/src/models/relations/Relation.ts:26

Inherited from ​

Relation.foreignKeyName


localKeyName ​

localKeyName: string

Defined in: packages/soukai/src/models/relations/Relation.ts:27

Inherited from ​

Relation.localKeyName


name ​

name: string

Defined in: packages/soukai/src/models/relations/Relation.ts:23

Inherited from ​

Relation.name


parent ​

parent: Parent

Defined in: packages/soukai/src/models/relations/Relation.ts:24

Inherited from ​

Relation.parent


relatedClass ​

relatedClass: RelatedClass

Defined in: packages/soukai/src/models/relations/Relation.ts:25

Inherited from ​

Relation.relatedClass


inverseBelongsToRelationClasses ​

static inverseBelongsToRelationClasses: Constructor<Relation<Model, Model, ModelConstructor<Model>>>[] = []

Defined in: packages/soukai/src/models/relations/Relation.ts:21

Inherited from ​

Relation.inverseBelongsToRelationClasses


inverseHasRelationClasses ​

static inverseHasRelationClasses: Constructor<Relation<Model, Model, ModelConstructor<Model>>>[] = []

Defined in: packages/soukai/src/models/relations/Relation.ts:20

Inherited from ​

Relation.inverseHasRelationClasses

Accessors ​

loaded ​

Get Signature ​

get loaded(): boolean

Defined in: packages/soukai/src/models/relations/Relation.ts:39

Returns ​

boolean

Inherited from ​

Relation.loaded


Get Signature ​

get related(): Related[] | undefined

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:23

Returns ​

Related[] | undefined

Set Signature ​

set related(related): void

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:27

Parameters ​

Related[] | undefined

Returns ​

void

Overrides ​

Relation.related

Methods ​

addRelated() ​

addRelated(related): void

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:61

Parameters ​

Related

Returns ​

void

Overrides ​

Relation.addRelated


assertLoaded() ​

protected assertLoaded(method): this is { related: Related[] }

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:88

Parameters ​

method ​

string

Returns ​

this is { related: Related[] }


attach() ​

Call Signature ​

attach(model?): Related

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:34

Parameters ​
model? ​

Related

Returns ​

Related

Call Signature ​

attach(attributes): Related

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:35

Parameters ​
attributes ​

Attributes

Returns ​

Related


clearForeignAttributes() ​

abstract clearForeignAttributes(related): void

Defined in: packages/soukai/src/models/relations/Relation.ts:68

Parameters ​

Related

Returns ​

void

Inherited from ​

Relation.clearForeignAttributes


clearInverseRelations() ​

clearInverseRelations(model): void

Defined in: packages/soukai/src/models/relations/Relation.ts:145

Parameters ​

model ​

Related

Returns ​

void

Inherited from ​

Relation.clearInverseRelations


clone() ​

clone(options?): this

Defined in: packages/soukai/src/models/relations/Relation.ts:106

Parameters ​

options? ​

RelationCloneOptions = {}

Returns ​

this

Inherited from ​

Relation.clone


create() ​

create(attributes?): Promise<Related>

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:53

Parameters ​

attributes? ​

Attributes = {}

Returns ​

Promise<Related>


disable() ​

disable(): void

Defined in: packages/soukai/src/models/relations/Relation.ts:62

Returns ​

void

Inherited from ​

Relation.disable


enable() ​

enable(): void

Defined in: packages/soukai/src/models/relations/Relation.ts:58

Returns ​

void

Inherited from ​

Relation.enable


getLoadedModels() ​

getLoadedModels(): Related[]

Defined in: packages/soukai/src/models/relations/Relation.ts:92

Returns ​

Related[]

Inherited from ​

Relation.getLoadedModels


getModels() ​

getModels(): Promise<Related[]>

Defined in: packages/soukai/src/models/relations/Relation.ts:84

Returns ​

Promise<Related[]>

Inherited from ​

Relation.getModels


initializeInverseRelations() ​

initializeInverseRelations(model): void

Defined in: packages/soukai/src/models/relations/Relation.ts:132

Parameters ​

model ​

Related

Returns ​

void

Inherited from ​

Relation.initializeInverseRelations


isEmpty() ​

isEmpty(): boolean | null

Defined in: packages/soukai/src/models/relations/Relation.ts:80

Returns ​

boolean | null

Inherited from ​

Relation.isEmpty


isInverseOf() ​

isInverseOf(other): boolean

Defined in: packages/soukai/src/models/relations/Relation.ts:158

Parameters ​

other ​

Relation

Returns ​

boolean

Inherited from ​

Relation.isInverseOf


isRelated() ​

isRelated(model): boolean

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:79

Parameters ​

model ​

Related

Returns ​

boolean

Overrides ​

Relation.isRelated


load() ​

abstract load(): Promise<Related[]>

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:77

Returns ​

Promise<Related[]>

Overrides ​

Relation.load


onDelete() ​

onDelete(strategy): this

Defined in: packages/soukai/src/models/relations/Relation.ts:100

Parameters ​

strategy ​

RelationDeleteStrategy

Returns ​

this

Inherited from ​

Relation.onDelete


onRelatedUpdated() ​

protected onRelatedUpdated(oldValue, newValue): void

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:84

Parameters ​

oldValue ​

Nullable<Model[]>

newValue ​

Nullable<Model[]>

Returns ​

void

Overrides ​

Relation.onRelatedUpdated


removeRelated() ​

removeRelated(related): void

Defined in: packages/soukai/src/models/relations/MultiModelRelation.ts:69

Parameters ​

Related

Returns ​

void

Overrides ​

Relation.removeRelated


resolve() ​

resolve(): Promise<Related | Related[] | null>

Defined in: packages/soukai/src/models/relations/Relation.ts:76

Returns ​

Promise<Related | Related[] | null>

Deprecated ​

This method has been renamed to load.

Inherited from ​

Relation.resolve


setForeignAttributes() ​

abstract setForeignAttributes(related): void

Defined in: packages/soukai/src/models/relations/Relation.ts:67

Parameters ​

Related

Returns ​

void

Inherited from ​

Relation.setForeignAttributes


static() ​

static(): RelationConstructor<MultiModelRelation<Parent, Related, RelatedClass>>

Defined in: packages/soukai/src/models/relations/Relation.ts:54

Returns ​

RelationConstructor<MultiModelRelation<Parent, Related, RelatedClass>>

Inherited from ​

Relation.static


unload() ​

unload(): void

Defined in: packages/soukai/src/models/relations/Relation.ts:96

Returns ​

void

Inherited from ​

Relation.unload