Skip to content

Class: abstract Relation<Parent, Related, RelatedClass>

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

Extended by

Type Parameters

Parent

Parent extends Model = Model

Related extends Model = Model

RelatedClass

RelatedClass extends ModelConstructor<Related> = ModelConstructor<Related>

Constructors

Constructor

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

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

Parameters

parent

Parent

relatedClass

RelatedClass

foreignKeyName

string

localKeyName?

string

Returns

Relation<Parent, Related, RelatedClass>

Properties

deleteStrategy

deleteStrategy: RelationDeleteStrategy = null

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


enabled

enabled: boolean = true

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


foreignKeyName

foreignKeyName: string

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


localKeyName

localKeyName: string

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


name

name: string

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


parent

parent: Parent

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


optional related: null | Related | Related[]

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


relatedClass

relatedClass: RelatedClass

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


inverseRelationClasses

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

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

Accessors

loaded

Get Signature

get loaded(): boolean

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

Returns

boolean

Methods

addRelated()

abstract addRelated(related): void

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

Parameters

Related

Returns

void


clone()

clone(options): this

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

Parameters

options

Partial = {}

Returns

this


disable()

disable(): void

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

Returns

void


enable()

enable(): void

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

Returns

void


getLoadedModels()

getLoadedModels(): Related[]

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

Returns

Related[]


getModels()

getModels(): Promise<Related[]>

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

Returns

Promise<Related[]>


initializeInverseRelations()

initializeInverseRelations(model): void

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

Parameters

model

Related

Returns

void


isEmpty()

isEmpty(): null | boolean

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

Returns

null | boolean


isInverseOf()

isInverseOf(relation): boolean

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

Parameters

relation

Relation

Returns

boolean


isRelated()

abstract isRelated(model): boolean

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

Parameters

model

Related

Returns

boolean


load()

abstract load(): Promise<null | Related | Related[]>

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

Returns

Promise<null | Related | Related[]>


onDelete()

onDelete(strategy): this

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

Parameters

strategy

RelationDeleteStrategy

Returns

this


resolve()

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

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

Returns

Promise<null | Related | Related[]>

Deprecated

This method has been renamed to load.


setForeignAttributes()

abstract setForeignAttributes(related): void

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

Parameters

Related

Returns

void


static()

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

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

Returns

RelationConstructor<Relation<Parent, Related, RelatedClass>>


unload()

unload(): void

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

Returns

void