Tento dokument byl přeložen umělou inteligencí. V případě nepřesností se prosím obraťte na anglickou verzi
V rámci vývoje pluginů pro NocoBase je kolekce (datová tabulka) jedním z klíčových konceptů. Pomocí definování nebo rozšiřování kolekcí můžete v pluginech přidávat nebo upravovat struktury datových tabulek. Na rozdíl od datových tabulek vytvářených prostřednictvím rozhraní pro správu zdrojů dat jsou kolekce definované v kódu obvykle systémové metadatové tabulky a nezobrazují se v seznamu správy zdrojů dat.
Podle konvenční adresářové struktury by soubory kolekcí měly být umístěny v adresáři ./src/server/collections. Pro vytváření nových tabulek použijte defineCollection() a pro rozšiřování stávajících tabulek extendCollection().
Ve výše uvedeném příkladu:
name: Název tabulky (v databázi se automaticky vygeneruje tabulka se stejným názvem).title: Zobrazovaný název tabulky v uživatelském rozhraní.fields: Kolekce polí, kde každé pole obsahuje atributy jako type, name a další.Pokud potřebujete přidat pole nebo upravit konfiguraci pro kolekce jiných pluginů, můžete použít extendCollection():
Po aktivaci pluginu systém automaticky přidá pole isPublished do stávající tabulky articles.
Konvenční adresář se načte před spuštěním všech metod load() pluginů, čímž se předejde problémům se závislostmi způsobeným nenačtením některých datových tabulek.
Při první aktivaci pluginu systém automaticky synchronizuje konfigurace kolekcí s databázovou strukturou. Pokud je plugin již nainstalován a běží, po přidání nebo úpravě kolekcí je třeba ručně spustit příkaz pro upgrade:
Pokud během synchronizace dojde k výjimkám nebo nekonzistentním datům, můžete strukturu tabulky obnovit přeinstalováním aplikace:
Po definování kolekce systém automaticky vygeneruje odpovídající zdroj (Resource), na kterém můžete přímo provádět operace CRUD (vytváření, čtení, aktualizace, mazání) prostřednictvím API. Podrobnosti naleznete v Správci zdrojů.