DataSourceManager Manajemen Data Source
NocoBase menyediakan DataSourceManager untuk mengelola beberapa data source. Setiap DataSource memiliki instance Database, ResourceManager, dan ACL sendiri, sehingga Anda dapat mengelola dan memperluas data source yang berbeda dengan fleksibel.
Konsep Dasar
Setiap instance DataSource berisi konten berikut:
dataSource.collectionManager: Digunakan untuk mengelola tabel data dan field.dataSource.resourceManager: Menangani operasi terkait resource (seperti CRUD, dll.).dataSource.acl: Access Control List (ACL) untuk operasi resource.
Untuk memudahkan akses, NocoBase menyediakan alias singkat untuk member terkait data source utama:
app.dbsetara dengandataSourceManager.get('main').collectionManager.dbapp.aclsetara dengandataSourceManager.get('main').aclapp.resourceManagersetara dengandataSourceManager.get('main').resourceManager
Method Umum
dataSourceManager.get(dataSourceKey)
Mengembalikan instance DataSource yang ditentukan.
dataSourceManager.use()
Mendaftarkan middleware untuk semua data source, akan mempengaruhi operasi semua data source.
dataSourceManager.beforeAddDataSource()
Dieksekusi sebelum data source dimuat. Biasanya digunakan untuk registrasi class statis, seperti registrasi class model dan tipe field:
dataSourceManager.afterAddDataSource()
Dieksekusi setelah data source dimuat. Biasanya digunakan untuk mendaftarkan operasi, mengatur kontrol akses, dll.
Ekstensi Data Source
Untuk cara ekstensi data source yang lengkap, silakan merujuk ke bagian ekstensi data source.
Tautan Terkait
- Database — CRUD, Repository, transaksi, dan event database
- Collections Tabel Data — Mendefinisikan atau memperluas struktur tabel data dengan kode
- ResourceManager Manajemen Resource — Mendaftarkan API kustom dan operasi resource
- ACL Kontrol Hak Akses — Hak akses role, snippet hak akses, dan kontrol akses
- Plugin — Siklus hidup class plugin, member method, dan objek
app

