#
Class: CriteriaNodeknex.CriteriaNode
Helper for working with deeply nested where/orderBy/having criteria. Uses composite pattern to build tree from the payload. Auto-joins relations and converts payload from { books: { publisher: { name: '...' } } } to { 'publisher_alias.name': '...' }
#
HierarchyCriteriaNode
#
Constructors#
constructor+ new CriteriaNode(metadata
: MetadataStorage, entityName
: string, parent?
: ICriteriaNode, key?
: string, validate?
: boolean): CriteriaNode
#
Parameters:Name | Type | Default value |
---|---|---|
metadata | MetadataStorage | - |
entityName | string | - |
parent? | ICriteriaNode | - |
key? | string | - |
validate | boolean | true |
Returns: CriteriaNode
Defined in: packages/knex/src/query/CriteriaNode.ts:12
#
Properties#
entityName• Readonly
entityName: string
#
key• Optional
Readonly
key: undefined | string
#
metadata• Protected
Readonly
metadata: MetadataStorage
#
parent• Optional
Readonly
parent: undefined | ICriteriaNode
#
payload• payload: any
Defined in: packages/knex/src/query/CriteriaNode.ts:11
#
prop• Optional
prop: undefined | EntityProperty<any>
Defined in: packages/knex/src/query/CriteriaNode.ts:12
#
Methods#
__@custom@36825â–¸ __@custom@36825(): string
Returns: string
Defined in: packages/knex/src/query/CriteriaNode.ts:119
#
getPathâ–¸ getPath(): string
Returns: string
Defined in: packages/knex/src/query/CriteriaNode.ts:78
#
getPivotPathâ–¸ getPivotPath(path
: string): string
#
Parameters:Name | Type |
---|---|
path | string |
Returns: string
Defined in: packages/knex/src/query/CriteriaNode.ts:115
#
isPivotJoinâ–¸ Private
isPivotJoin(): boolean
Returns: boolean
Defined in: packages/knex/src/query/CriteriaNode.ts:103
#
processâ–¸ process<T>(qb
: IQueryBuilder<T>, alias?
: string): any
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
qb | IQueryBuilder<T> |
alias? | string |
Returns: any
Defined in: packages/knex/src/query/CriteriaNode.ts:32
#
renameFieldToPKâ–¸ renameFieldToPK<T>(qb
: IQueryBuilder<T>): string
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
qb | IQueryBuilder<T> |
Returns: string
Defined in: packages/knex/src/query/CriteriaNode.ts:64
#
shouldInlineâ–¸ shouldInline(payload
: any): boolean
#
Parameters:Name | Type |
---|---|
payload | any |
Returns: boolean
Defined in: packages/knex/src/query/CriteriaNode.ts:36
#
shouldRenameâ–¸ shouldRename(payload
: any): boolean
#
Parameters:Name | Type |
---|---|
payload | any |
Returns: boolean
Defined in: packages/knex/src/query/CriteriaNode.ts:44
#
willAutoJoinâ–¸ willAutoJoin<T>(qb
: IQueryBuilder<T>, alias?
: string): boolean
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
qb | IQueryBuilder<T> |
alias? | string |
Returns: boolean
Defined in: packages/knex/src/query/CriteriaNode.ts:40
#
isCustomExpressionâ–¸ Static
isCustomExpression(field
: string): boolean
#
Parameters:Name | Type |
---|---|
field | string |
Returns: boolean
Defined in: packages/knex/src/query/CriteriaNode.ts:123