Skip to content

Class: SolidHasManyRelation<Parent, Related, RelatedClass> ​

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:18

Extends ​

Extended by ​

Type Parameters ​

Parent ​

Parent extends SolidModel = SolidModel

Related extends SolidModel = SolidModel

RelatedClass ​

RelatedClass extends SolidModelConstructor<Related> = SolidModelConstructor<Related>

Implements ​

Constructors ​

Constructor ​

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

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

Parameters ​

parent ​

Parent

relatedClass ​

RelatedClass

foreignKeyName? ​

string

localKeyName? ​

string

Returns ​

SolidHasManyRelation<Parent, Related, RelatedClass>

Inherited from ​

SolidHasRelation.constructor

Properties ​

__modelsInOtherDocumentIds? ​

optional __modelsInOtherDocumentIds: string[]

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:40

Inherited from ​

SolidMultiModelDocumentRelation.__modelsInOtherDocumentIds


__modelsInSameDocument? ​

optional __modelsInSameDocument: Related[]

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:39

Inherited from ​

SolidMultiModelDocumentRelation.__modelsInSameDocument


__removedDocumentModels ​

__removedDocumentModels: Related[] = []

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:38

Inherited from ​

SolidMultiModelDocumentRelation.__removedDocumentModels


protected optional _related: null | Related | Related[]

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

Implementation of ​

BeforeParentCreateRelation._related


deleteStrategy ​

deleteStrategy: RelationDeleteStrategy = null

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

Implementation of ​

BeforeParentCreateRelation.deleteStrategy


documentModelsLoaded ​

protected documentModelsLoaded: boolean = false

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidDocumentRelation.ts:23

Inherited from ​

SolidMultiModelDocumentRelation.documentModelsLoaded


enabled ​

enabled: boolean = true

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

Implementation of ​

BeforeParentCreateRelation.enabled


foreignKeyName ​

foreignKeyName: string

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

Implementation of ​

BeforeParentCreateRelation.foreignKeyName


localKeyName ​

localKeyName: string

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

Implementation of ​

BeforeParentCreateRelation.localKeyName


name ​

name: string

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

Implementation of ​

BeforeParentCreateRelation.name


parent ​

parent: Parent

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

Implementation of ​

BeforeParentCreateRelation.parent


relatedClass ​

relatedClass: RelatedClass

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

Implementation of ​

BeforeParentCreateRelation.relatedClass


useSameDocument ​

useSameDocument: boolean = false

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidDocumentRelation.ts:21

Inherited from ​

SolidMultiModelDocumentRelation.useSameDocument


inverseBelongsToRelationClasses ​

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

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


inverseHasRelationClasses ​

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

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

Accessors ​

__newModels ​

Get Signature ​

get __newModels(): Related[]

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:55

Returns ​

Related[]

Set Signature ​

set __newModels(value): void

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:59

Parameters ​
value ​

Related[]

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.__newModels


loaded ​

Get Signature ​

get loaded(): boolean

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

Returns ​

boolean

Implementation of ​

BeforeParentCreateRelation.loaded


protectedSolidHas ​

Get Signature ​

get protected protectedSolidHas(): ProtectedSolidHasRelation

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidHasRelation.ts:28

Returns ​

ProtectedSolidHasRelation

Inherited from ​

SolidHasRelation.protectedSolidHas


protectedSolidMulti ​

Get Signature ​

get protected protectedSolidMulti(): ProtectedSolidMultiRelation

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:43

Returns ​

ProtectedSolidMultiRelation

Inherited from ​

SolidMultiModelDocumentRelation.protectedSolidMulti


Get Signature ​

get related(): undefined | Related[]

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

Returns ​

undefined | Related[]

Set Signature ​

set related(related): void

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

Parameters ​

undefined | Related[]

Returns ​

void

Implementation of ​

BeforeParentCreateRelation.related

Methods ​

__afterParentSave() ​

__afterParentSave(): void

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:169

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.__afterParentSave


__beforeParentCreate() ​

__beforeParentCreate(): void

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:68

Returns ​

void


__loadDocumentModels() ​

__loadDocumentModels(this, documentUrl, document): Promise<void>

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidHasRelation.ts:32

Parameters ​

this ​

SolidHasRelationThis

documentUrl ​

string

document ​

JsonLDGraph

Returns ​

Promise<void>

Inherited from ​

SolidHasRelation.__loadDocumentModels


__synchronizeRelated() ​

__synchronizeRelated(other, options): Promise<void>

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:74

Parameters ​

other ​

this

options ​

object & SynchronizeCloneOptions

Returns ​

Promise<void>


addRelated() ​

addRelated(related): void

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

Parameters ​

Related

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.addRelated


assertLoaded() ​

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

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

Parameters ​

method ​

string

Returns ​

this is { related: Related[] }


attach() ​

Call Signature ​

attach(model?): Related

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

Parameters ​
model? ​

Related

Returns ​

Related

Call Signature ​

attach(attributes): Related

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

Parameters ​
attributes ​

Attributes

Returns ​

Related


clearForeignAttributes() ​

clearForeignAttributes(related): void

Defined in: packages/soukai/src/models/relations/HasManyRelation.ts:46

Parameters ​

Related

Returns ​

void


clearInverseRelations() ​

clearInverseRelations(model): void

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

Parameters ​

model ​

Related

Returns ​

void


clone() ​

clone(options): this

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:62

Parameters ​

options ​

Partial = {}

Returns ​

this


cloneSolidData() ​

protected cloneSolidData(clone): void

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:173

Parameters ​

clone ​

SolidMultiModelDocumentRelationThis<Parent, Related, RelatedClass>

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.cloneSolidData


create() ​

create(attributes): Promise<Related>

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

This method will create an instance of the related model and call the [[save]] method.

Parameters ​

attributes ​

Attributes = {}

Returns ​

Promise<Related>

Inherited from ​

SolidMultiModelDocumentRelation.create


detach() ​

detach(this, keyOrModel): void

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:122

Parameters ​

this ​

SolidMultiModelDocumentRelationThis<Parent, Related, RelatedClass>

keyOrModel ​

string | Related

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.detach


disable() ​

disable(): void

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

Returns ​

void


enable() ​

enable(): void

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

Returns ​

void


getLoadedModels() ​

getLoadedModels(): Related[]

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

Returns ​

Related[]


getModels() ​

getModels(): Promise<Related[]>

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

Returns ​

Promise<Related[]>


initializeInverseRelations() ​

initializeInverseRelations(model): void

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

Parameters ​

model ​

Related

Returns ​

void


isEmpty() ​

isEmpty(): null | boolean

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

Returns ​

null | boolean

Inherited from ​

SolidMultiModelDocumentRelation.isEmpty


isInverseOf() ​

isInverseOf(other): boolean

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

Parameters ​

other ​

Relation

Returns ​

boolean


isRelated() ​

isRelated(model): boolean

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

Parameters ​

model ​

Related

Returns ​

boolean

Inherited from ​

SolidMultiModelDocumentRelation.isRelated


load() ​

load(): Promise<Related[]>

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:33

Returns ​

Promise<Related[]>


loadDocumentModels() ​

protected loadDocumentModels(this, modelsInSameDocument, modelsInOtherDocumentIds): void

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:206

Parameters ​

this ​

SolidMultiModelDocumentRelationThis<Parent, Related, RelatedClass>

modelsInSameDocument ​

Related[]

modelsInOtherDocumentIds ​

string[]

Returns ​

void

Inherited from ​

SolidMultiModelDocumentRelation.loadDocumentModels


loadRelatedModels() ​

protected loadRelatedModels(documentIds): Promise<Related[]>

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:116

Parameters ​

documentIds ​

string[]

Returns ​

Promise<Related[]>


onDelete() ​

onDelete(strategy): this

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

Parameters ​

strategy ​

RelationDeleteStrategy

Returns ​

this


onRelatedUpdated() ​

protected onRelatedUpdated(oldValue, newValue): void

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

Parameters ​

oldValue ​

Nullable<Model[]>

newValue ​

Nullable<Model[]>

Returns ​

void


remove() ​

remove(this, keyOrModel): Promise<void>

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:116

Parameters ​

this ​

SolidMultiModelDocumentRelationThis<Parent, Related, RelatedClass>

keyOrModel ​

string | Related

Returns ​

Promise<void>

Inherited from ​

SolidMultiModelDocumentRelation.remove


removeRelated() ​

removeRelated(related): void

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

Parameters ​

Related

Returns ​

void


reset() ​

reset(related): void

Defined in: packages/soukai-solid/src/models/relations/SolidHasManyRelation.ts:49

Parameters ​

Related[] = []

Returns ​

void


resolve() ​

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

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

Returns ​

Promise<null | Related | Related[]>

Deprecated ​

This method has been renamed to load.


save() ​

save(this, model): Promise<Related>

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidMultiModelDocumentRelation.ts:101

This method will bind up all the relevant data (foreignKey, inverse relations, etc.) and save the model. If the parent model does not exist and both models will be stored in the same document, the model will be saved when the parent model is saved instead.

Parameters ​

this ​

SolidMultiModelDocumentRelationThis

model ​

Related

Related model instance to save.

Returns ​

Promise<Related>

Inherited from ​

SolidMultiModelDocumentRelation.save


setForeignAttributes() ​

setForeignAttributes(related): void

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

Parameters ​

Related

Returns ​

void


static() ​

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

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

Returns ​

RelationConstructor<SolidHasManyRelation<Parent, Related, RelatedClass>>


unload() ​

unload(): void

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

Returns ​

void


usingSameDocument() ​

usingSameDocument(useSameDocument): this

Defined in: packages/soukai-solid/src/models/relations/mixins/SolidDocumentRelation.ts:25

Parameters ​

useSameDocument ​

boolean = true

Returns ​

this

Inherited from ​

SolidMultiModelDocumentRelation.usingSameDocument