Skip to content

Latest commit

 

History

History
198 lines (117 loc) · 4.01 KB

Schema.md

File metadata and controls

198 lines (117 loc) · 4.01 KB

redis-om / Schema

Class: Schema

Defines a schema that determines how an Entity is mapped to Redis data structures. Construct by passing in a prefix for keys in Redis, a SchemaDefinition, and optionally SchemaOptions:

const schema = new Schema('Foo', {
  aString: { type: 'string' },
  aNumber: { type: 'number' },
  aBoolean: { type: 'boolean' },
  someText: { type: 'text' },
  aPoint: { type: 'point' },
  aDate: { type: 'date' },
  someStrings: { type: 'string[]' }
}, {
  dataStructure: 'HASH'
})

A Schema is primarily used by a Repository which requires a Schema in its constructor.

Table of contents

Constructors

Accessors

Methods

Constructors

constructor

new Schema(prefix, schemaDef, options?)

Constructs a Schema.

Parameters

Name Type Description
prefix string The string that comes before the ID when creating Redis keys.
schemaDef SchemaDefinition Defines all of the fields for the Schema and how they are mapped to Redis.
options? SchemaOptions Additional options for this Schema.

Accessors

dataStructure

get dataStructure(): DataStructure

The configured data structure, a string with the value of either HASH or JSON, that this Schema uses to store Entities in Redis.

Returns

DataStructure


fields

get fields(): Field[]

The Fields defined by this Schema.

Returns

Field[]


indexHash

get indexHash(): string

A hash for this Schema that is used to determine if the Schema has been changed when calling createIndex.

Returns

string


indexHashName

get indexHashName(): string

The configured name for the RediSearch index hash for this Schema.

Returns

string


indexName

get indexName(): string

The configured name for the RediSearch index for this Schema.

Returns

string


prefix

get prefix(): string

The string that comes before the ID when creating Redis keys. Combined with the results of idStrategy to generate a key. If prefix is Foo and idStrategy returns 12345 then the generated key would be Foo:12345.

Returns

string


stopWords

get stopWords(): string[]

The configured stop words. Ignored if useStopWords is anything other than CUSTOM.

Returns

string[]


useStopWords

get useStopWords(): StopWordOptions

The configured usage of stop words, a string with the value of either OFF, DEFAULT, or CUSTOM. See SchemaOptions for more details.

Returns

StopWordOptions

Methods

fieldByName

fieldByName(name): Field

Gets a single Field defined by this Schema.

Parameters

Name Type Description
name string The name of the Field in this Schema.

Returns

Field

The Field, or null of not found.


generateId

generateId(): string

Generates a unique string using the configured IdStrategy.

Returns

string

The generated id.