Эта документация была автоматически переведена ИИ.
DataSourceManager
NocoBase предоставляет DataSourceManager для управления несколькими источниками данных. Каждый DataSource имеет собственные экземпляры Database, ResourceManager и ACL, что позволяет разработчикам гибко управлять и расширять множество источников данных.
Основные понятия
Каждый экземпляр DataSource включает следующее:
dataSource.collectionManager: Используется для управления коллекциями и полями.dataSource.resourceManager: Обрабатывает операции, связанные с ресурсами (например, создание, чтение, обновление, удаление и т.д.).dataSource.acl: Контроль доступа (ACL) для операций с ресурсами.
Для удобного доступа предусмотрены быстрые псевдонимы для основных членов источника данных:
app.dbэквивалентноdataSourceManager.get('main').collectionManager.dbapp.aclэквивалентноdataSourceManager.get('main').aclapp.resourceManagerэквивалентноdataSourceManager.get('main').resourceManager
Часто используемые методы
dataSourceManager.get(dataSourceKey)
Этот метод возвращает указанный экземпляр DataSource.
dataSourceManager.use()
Регистрирует промежуточное ПО для всех источников данных. Это повлияет на операции со всеми источниками данных.
dataSourceManager.beforeAddDataSource()
Выполняется перед загрузкой источника данных. Часто используется для регистрации статических классов, таких как классы моделей и типов полей:
dataSourceManager.afterAddDataSource()
Выполняется после загрузки источника данных. Часто используется для регистрации операций, настройки контроля доступа и т.д.
Расширение источников данных
Полное описание расширения источников данных вы найдете в соответствующем разделе.

