Detta dokument har översatts av AI. För eventuella felaktigheter, se den engelska versionen
NocoBase erbjuder DataSourceManager för hantering av flera datakällor. Varje DataSource har sina egna instanser av Database, ResourceManager och ACL, vilket gör det enkelt för utvecklare att flexibelt hantera och utöka flera datakällor.
Varje DataSource-instans innehåller följande:
dataSource.collectionManager: Används för att hantera samlingar och fält.dataSource.resourceManager: Hanterar resursrelaterade operationer (t.ex. CRUD).dataSource.acl: Åtkomstkontroll (ACL) för resursoperationer.För enklare åtkomst tillhandahålls snabbalias för huvuddatakällans medlemmar:
app.db motsvarar dataSourceManager.get('main').collectionManager.dbapp.acl motsvarar dataSourceManager.get('main').aclapp.resourceManager motsvarar dataSourceManager.get('main').resourceManagerDenna metod returnerar den angivna DataSource-instansen.
Registrerar middleware för alla datakällor. Detta kommer att påverka operationer på samtliga datakällor.
Körs innan en datakälla laddas. Används ofta för registrering av statiska klasser, som modellklasser och fälttyper:
Körs efter att en datakälla har laddats. Används ofta för att registrera operationer, ställa in åtkomstkontroll med mera.
För en fullständig beskrivning av datakälleutökning, se kapitlet om datakälleutökning.