Tento dokument byl přeložen umělou inteligencí. V případě nepřesností se prosím obraťte na anglickou verzi
Kolekce slouží k definování datových modelů v systému, jako jsou názvy modelů, pole, indexy, asociace a další informace.
Obvykle se volá prostřednictvím metody collection instance Database jako vstupní bod proxy.
Další typy polí naleznete v Polích.
Podpis
constructor(options: CollectionOptions, context: CollectionContext)Parametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
options.name | string | - | identifikátor kolekce |
options.tableName? | string | - | Název databázové tabulky. Pokud není zadán, použije se hodnota z options.name. |
options.fields? | FieldOptions[] | - | Definice polí. Podrobnosti naleznete v Poli. |
options.model? | string | ModelStatic<Model> | - | Typ modelu Sequelize. Pokud použijete string, název modelu musí být předtím zaregistrován v databázi. |
options.repository? | string | RepositoryType | - | Typ úložiště dat. Pokud použijete string, typ úložiště musí být předtím zaregistrován v databázi. |
options.sortable? | string | boolean | { name?: string; scopeKey?: string } | - | Konfigurace řaditelného pole dat. Ve výchozím nastavení se neřadí. |
options.autoGenId? | boolean | true | Zda se má automaticky generovat unikátní primární klíč. Výchozí hodnota je true. |
context.database | Database | - | Databáze v aktuálním kontextu. |
Příklad
Vytvoření kolekce příspěvků:
optionsPočáteční konfigurační parametry pro kolekci. Stejné jako parametr options konstruktoru.
contextKontext, do kterého aktuální kolekce patří, v současné době se jedná hlavně o instanci databáze.
nameNázev kolekce.
dbInstance databáze, do které patří.
filterTargetKeyNázev pole použitého jako primární klíč.
isThroughZda se jedná o průchozí kolekci.
modelOdpovídá typu modelu Sequelize.
repositoryInstance úložiště dat.
getField()Získá objekt pole s odpovídajícím názvem definovaným v kolekci.
Podpis
getField(name: string): FieldParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
name | string | - | Název pole |
Příklad
setField()Nastaví pole pro kolekci.
Podpis
setField(name: string, options: FieldOptions): FieldParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
name | string | - | Název pole |
options | FieldOptions | - | Konfigurace pole. Podrobnosti naleznete v Poli. |
Příklad
setFields()Hromadně nastaví více polí pro kolekci.
Podpis
setFields(fields: FieldOptions[], resetFields = true): Field[]Parametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
fields | FieldOptions[] | - | Konfigurace polí. Podrobnosti naleznete v Poli. |
resetFields | boolean | true | Zda resetovat existující pole. |
Příklad
removeField()Odebere objekt pole s odpovídajícím názvem definovaným v kolekci.
Podpis
removeField(name: string): void | FieldParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
name | string | - | Název pole |
Příklad
resetFields()Resetuje (vymaže) pole kolekce.
Podpis
resetFields(): voidPříklad
hasField()Zkontroluje, zda je v kolekci definován objekt pole s odpovídajícím názvem.
Podpis
hasField(name: string): booleanParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
name | string | - | Název pole |
Příklad
findField()Najde v kolekci objekt pole, který splňuje kritéria.
Podpis
findField(predicate: (field: Field) => boolean): Field | undefinedParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
predicate | (field: Field) => boolean | - | Kritéria vyhledávání |
Příklad
forEachField()Iteruje přes objekty polí v kolekci.
Podpis
forEachField(callback: (field: Field) => void): voidParametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
callback | (field: Field) => void | - | Funkce zpětného volání |
Příklad
addIndex()Přidá index do kolekce.
Podpis
addIndex(index: string | string[] | { fields: string[], unique?: boolean,[key: string]: any })Parametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
index | string | string[] | - | Název(názvy) pole(polí) pro indexování. |
index | { fields: string[], unique?: boolean, [key: string]: any } | - | Kompletní konfigurace. |
Příklad
removeIndex()Odebere index z kolekce.
Podpis
removeIndex(fields: string[])Parametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
fields | string[] | - | Kombinace názvů polí pro index, který má být odstraněn. |
Příklad
remove()Odstraní kolekci.
Podpis
remove(): voidPříklad
sync()Synchronizuje definici kolekce s databází. Kromě výchozí logiky Model.sync v Sequelize zpracovává také kolekce odpovídající asociačním polím.
Podpis
sync(): Promise<void>Příklad
existsInDb()Zkontroluje, zda kolekce existuje v databázi.
Podpis
existsInDb(options?: Transactionable): Promise<boolean>Parametry
| Parametr | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
options?.transaction | Transaction | - | Instance transakce |
Příklad
removeFromDb()Podpis
removeFromDb(): Promise<void>Příklad