Tento dokument byl přeložen umělou inteligencí. V případě nepřesností se prosím obraťte na anglickou verzi
name - Název kolekcestringtitle - Název kolekcestringmigrationRules - Pravidla migraceMigrationRule[]inherits - Dědění kolekcístring[] | stringfilterTargetKey - Cílový klíč pro filtrovánístring | string[]fields - Definice políFieldOptions[][]model - Vlastní modelstring | ModelStatic<Model>repository - Vlastní repozitářstring | RepositoryTypeautoGenId - Automatické generování IDbooleantruetimestamps - Povolit časová razítkabooleantruecreatedAt - Pole pro čas vytvořeníboolean | stringtrueupdatedAt - Pole pro čas aktualizaceboolean | stringtruedeletedAt - Pole pro soft deleteboolean | stringfalseparanoid - Režim soft deletebooleanfalseunderscored - Pojmenování s podtržítkybooleanfalseindexes - Konfigurace indexůModelIndexesOptions[]NocoBase podporuje více typů polí, přičemž všechna pole jsou definována na základě sjednoceného typu FieldOptions. Konfigurace pole zahrnuje základní vlastnosti, vlastnosti specifické pro datový typ, vlastnosti vztahů a vlastnosti pro vykreslování na frontendu.
Všechny typy polí dědí z BaseFieldOptions a poskytují společné možnosti konfigurace polí:
Příklad:
name - Název polestringhidden - Skryté polebooleanfalsevalidation - Ověřovací pravidlaValidationOptions<T>allowNull - Povolit nulové hodnotybooleantrueNULL.defaultValue - Výchozí hodnotaanyunique - Unikátní omezeníboolean | stringfalseprimaryKey - Primární klíčbooleanfalseautoIncrement - Automatické navyšováníbooleanfalsefield - Název databázového sloupcestringfield v Sequelize).comment - Databázový komentářstringtitle - Zobrazovaný názevstringdescription - Popis polestringinterface - Komponenta rozhranístringtype: 'string' - Řetězcové poleVARCHARlength: Omezení délky řetězcetrim: Zda se mají automaticky odstranit počáteční a koncové mezeryPříklad:
type: 'text' - Textové poleTEXT, MEDIUMTEXT, LONGTEXTlength: Typ délky textu MySQL (tiny/medium/long)Příklad:
type: 'integer' - Celé čísloINTEGERPříklad:
type: 'bigInt' - Velké celé číslointeger.BIGINTPříklad:
type: 'float' - Pole s plovoucí desetinnou čárkouFLOATprecision: Přesnost (celkový počet číslic)scale: Počet desetinných místPříklad:
type: 'double' - Pole s dvojitou přesností s plovoucí desetinnou čárkoufloat.DOUBLEprecision: Přesnost (celkový počet číslic)scale: Počet desetinných místPříklad:
type: 'real' - Reálné čísloREALprecision: Přesnost (celkový počet číslic)scale: Počet desetinných místPříklad:
type: 'decimal' - Pole s přesnými desetinnými číslyDECIMALprecision: Přesnost (celkový počet číslic)scale: Počet desetinných místPříklad:
type: 'boolean' - Booleovské poleBOOLEAN nebo TINYINT(1)Příklad:
type: 'radio' - Pole s přepínačem (radio)BOOLEAN nebo TINYINT(1)Příklad:
type: 'date' - Datumové poleDATEtimezone: Zda obsahuje informace o časovém pásmuPříklad:
type: 'time' - Časové poleTIMEtimezone: Zda obsahuje informace o časovém pásmuPříklad:
type: 'datetimeTz' - Pole data a času s časovým pásmemTIMESTAMP WITH TIME ZONEtimezone: Zda obsahuje informace o časovém pásmuPříklad:
type: 'datetimeNoTz' - Pole data a času bez časového pásmaTIMESTAMP nebo DATETIMEtimezone: Zda obsahuje informace o časovém pásmuPříklad:
type: 'dateOnly' - Pouze datumové poleDATEtype: 'unixTimestamp' - Pole s Unix časovým razítkemBIGINTepoch: Čas epochyPříklad:
type: 'json' - Pole JSONJSON nebo TEXTtype: 'jsonb' - Pole JSONBJSONB (PostgreSQL)type: 'array' - Pole typu ArrayJSON nebo ARRAYdataType: Typ úložištěelementType: Typ prvku (STRING/INTEGER/BOOLEAN/JSON)Příklad:
type: 'set' - Pole typu SetJSON nebo ARRAYdataType: Typ úložištěelementType: Typ prvku (STRING/INTEGER/BOOLEAN/JSON)Příklad:
type: 'uuid' - Pole UUIDUUID nebo VARCHAR(36)autoFill: Automatické vyplněníPříklad:
type: 'nanoid' - Pole NanoidVARCHARsize: Délka IDcustomAlphabet: Vlastní sada znakůautoFill: Automatické vyplněníPříklad:
type: 'uid' - Vlastní pole UIDVARCHARprefix: Předponapattern: Ověřovací vzorPříklad:
type: 'snowflakeId' - Pole Snowflake IDBIGINTtype: 'password' - Pole pro hesloVARCHARlength: Délka hasherandomBytesSize: Velikost náhodných bajtůPříklad:
type: 'encryption' - Šifrovací poleVARCHARtype: 'virtual' - Virtuální poleŽádný (virtuální pole)type: 'context' - Kontextové poleUrčeno podle dataTypedataIndex: Cesta k datovému indexudataType: Datový typcreateOnly: Nastavit pouze při vytvářeníPříklad:
type: 'belongsTo' - Vztah patří kPole cizího klíčetarget: Název cílové kolekceforeignKey: Název pole cizího klíčetargetKey: Název pole cílového klíče v cílové kolekcionDelete: Kaskádová akce při smazáníonUpdate: Kaskádová akce při aktualizaciconstraints: Zda povolit omezení cizího klíčePříklad:
type: 'hasOne' - Vztah má jedenPole cizího klíčetarget: Název cílové kolekceforeignKey: Název pole cizího klíčesourceKey: Název pole zdrojového klíče ve zdrojové kolekcionDelete: Kaskádová akce při smazáníonUpdate: Kaskádová akce při aktualizaciconstraints: Zda povolit omezení cizího klíčePříklad:
type: 'hasMany' - Vztah má mnohoPole cizího klíčetarget: Název cílové kolekceforeignKey: Název pole cizího klíčesourceKey: Název pole zdrojového klíče ve zdrojové kolekcisortBy: Pole pro řazenísortable: Zda je možné řaditonDelete: Kaskádová akce při smazáníonUpdate: Kaskádová akce při aktualizaciconstraints: Zda povolit omezení cizího klíčePříklad:
type: 'belongsToMany' - Vztah mnoho ku mnohaSpojovací tabulkatarget: Název cílové kolekcethrough: Název spojovací tabulkyforeignKey: Název pole cizího klíčeotherKey: Druhý cizí klíč ve spojovací tabulcesourceKey: Název pole zdrojového klíče ve zdrojové kolekcitargetKey: Název pole cílového klíče v cílové kolekcionDelete: Kaskádová akce při smazáníonUpdate: Kaskádová akce při aktualizaciconstraints: Zda povolit omezení cizího klíčePříklad: