Class

BaseRecord

BaseRecord(params, resource)

Representation of an particular ORM/ODM Record in given Resource in AdminJS

Constructor

# new BaseRecord(params, resource)

Parameters:
Name Type Description
params ParamsType

all resource data. I.e. field values

resource BaseResource

resource to which given record belongs

View Source adminjs/src/backend/adapters/record/base-record.ts, line 14

Members

PropertyErrors

# errors

Object containing all validation errors: this.errors[path] = 'errorMessage'

View Source adminjs/src/backend/adapters/record/base-record.ts, line 288

ParamsType

# params

Actual record data stored as a flatten object. You shouldn't access them directly - always with BaseRecord#get and BaseRecord#set property.

View Source adminjs/src/backend/adapters/record/base-record.ts, line 282

object

# populated

Object containing all populated relations.

View Source adminjs/src/backend/adapters/record/base-record.ts, line 294

BaseResource

# resource

Resource to which record belongs

View Source adminjs/src/backend/adapters/record/base-record.ts, line 275

Methods

# async create() → {Promise.<BaseRecord>}

Creates the record in the database

Practically it invokes BaseResource#create.

When validation error occurs it stores that to BaseResource#errors

View Source adminjs/src/backend/adapters/record/base-record.ts, line 155

given record (this)

Promise.<BaseRecord>

# error(path) → {RecordError|null}

Returns error message for given property path (name)

Parameters:
Name Type Description
path string

(name) of property which we want to check if is valid

View Source adminjs/src/backend/adapters/record/base-record.ts, line 205

validation message of null

RecordError | null

# get(propertyPathopt, optionsopt) → {any}

Returns unflatten (regular) value for given field. So if you have in the params following structure:

params = {
  genre.0: 'male',
  genre.1: 'female',
}

for get('genre') function will return ['male', 'female']

Parameters:
Name Type Attributes Description
propertyPath string <optional>

path for the property. If not set function returns an entire unflatten object

options GetOptions <optional>

View Source adminjs/src/backend/adapters/record/base-record.ts, line 49

unflatten data under given path

any

# id() → {string|number}

Returns uniq id of the Record.

View Source adminjs/src/backend/adapters/record/base-record.ts, line 174

id of the Record

string | number

# isValid() → {boolean}

Return state of validation for given record

View Source adminjs/src/backend/adapters/record/base-record.ts, line 197

if record is valid or not.

boolean

# namespaceParams(prefix) → {object|undefined}

Returns object containing all params keys starting with prefix

Parameters:
Name Type Description
prefix string
Deprecated:
  • in favour of selectParams

View Source adminjs/src/backend/adapters/record/base-record.ts, line 73

object | undefined

# param(path) → {any}

Returns value for given field.

Parameters:
Name Type Description
path string

path (name) for given field: i.e. 'email' or 'authentication.email' if email is nested within the authentication object in the data store

Deprecated:

View Source adminjs/src/backend/adapters/record/base-record.ts, line 28

value for given field

any

# populate(propertyPath, recordopt)

Populate record relations

Parameters:
Name Type Attributes Description
propertyPath string

name of the property which should be populated

record BaseRecord | null <optional>

record to which property relates. If record is null or undefined - function clears the previous value

View Source adminjs/src/backend/adapters/record/base-record.ts, line 215

# async save() → {Promise.<BaseRecord>}

Saves the record in the database. When record already exists - it updates, otherwise it creates new one.

Practically it invokes BaseResource#create or BaseResource#update methods.

When validation error occurs it stores that to BaseResource#errors

View Source adminjs/src/backend/adapters/record/base-record.ts, line 124

given record (this)

Promise.<BaseRecord>

# selectParams(prefix, optionsopt) → {object|undefined}

Returns object containing all params keys starting with prefix

Parameters:
Name Type Attributes Description
prefix string
options GetOptions <optional>

View Source adminjs/src/backend/adapters/record/base-record.ts, line 85

object | undefined

# set(propertyPath, value)

Sets given value under the propertyPath. Value is flatten and all previous values under this path are replaced. When value is undefined function just clears the old values

Parameters:
Name Type Description
propertyPath string
value any

View Source adminjs/src/backend/adapters/record/base-record.ts, line 61

an entire, updated, params object

# storeParams(payloadDataopt)

Stores incoming payloadData in record params

Parameters:
Name Type Attributes Description
payloadData object <optional>

View Source adminjs/src/backend/adapters/record/base-record.ts, line 257

# title() → {string}

Returns title of the record. Usually title is an value for fields like: email, topic, title etc.

Title will be shown in the breadcrumbs for example.

View Source adminjs/src/backend/adapters/record/base-record.ts, line 189

title of the record

string

# toJSON(currentAdminopt) → {RecordJSON}

Returns JSON representation of an record

Parameters:
Name Type Attributes Description
currentAdmin CurrentAdmin <optional>

View Source adminjs/src/backend/adapters/record/base-record.ts, line 230

RecordJSON

# async update(params) → {Promise.<BaseRecord>}

Updates given Record in the data store. Practically it invokes BaseResource.update method.

When validation error occurs it stores that to BaseResource.errors

Parameters:
Name Type Description
params object

all field with values which has to be updated

View Source adminjs/src/backend/adapters/record/base-record.ts, line 97

given record (this)

Promise.<BaseRecord>