Skip to content

Class: Model<S, O>

Defined in: src/model/model.ts:11

A model returned by dorm.model(...). Bundles a collection's schema with a query/write manager exposed as .objects (Django-style), plus lifecycle hooks via pre/post.

Type Parameters

S

S extends SchemaDef

O

O extends ModelOptions = ModelOptions

Constructors

Constructor

new Model<S, O>(client, name, schema, options): Model<S, O>

Defined in: src/model/model.ts:15

Parameters

client

DORMClient

name

string

schema

S

options

O

Returns

Model<S, O>

Properties

objects

readonly objects: Manager<S, O>

Defined in: src/model/model.ts:12


name

readonly name: string

Defined in: src/model/model.ts:17


schema

readonly schema: S

Defined in: src/model/model.ts:18


options

readonly options: O

Defined in: src/model/model.ts:19

Accessors

__meta__

Get Signature

get __meta__(): Record<string, unknown>

Defined in: src/model/model.ts:36

Returns

Record<string, unknown>

Methods

pre()

pre(event, fn): this

Defined in: src/model/model.ts:25

Register a hook that runs before create | update | delete.

Parameters

event

HookEvent

fn

HookFn

Returns

this


post()

post(event, fn): this

Defined in: src/model/model.ts:31

Register a hook that runs after create | update | delete.

Parameters

event

HookEvent

fn

HookFn

Returns

this


ensureIndexes()

ensureIndexes(): Promise<string[]>

Defined in: src/model/model.ts:45

Creates the unique/index indexes declared on this model's fields.

Returns

Promise<string[]>

Released under the MIT License.