Ця документація була автоматично перекладена штучним інтелектом.
У розробці плагінів NocoBase колекція (таблиця даних) є одним з ключових понять. Ви можете додавати або змінювати структури таблиць даних у плагінах, визначаючи або розширюючи колекції. На відміну від таблиць даних, створених через інтерфейс керування джерелами даних, колекції, визначені в коді, зазвичай є системними метаданими і не відображаються у списку керування джерелами даних.
Відповідно до узгодженої структури каталогів, файли колекцій слід розміщувати в каталозі ./src/server/collections. Для створення нових таблиць використовуйте defineCollection(), а для розширення існуючих — extendCollection().
У наведеному вище прикладі:
name: Назва таблиці (у базі даних автоматично буде створено таблицю з такою ж назвою).title: Назва, що відображається для цієї таблиці в інтерфейсі.fields: Набір полів, кожне поле містить такі атрибути, як type, name тощо.Якщо вам потрібно додати поля або змінити конфігурацію для колекцій інших плагінів, ви можете скористатися extendCollection():
Після активації плагіна система автоматично додасть поле isPublished до існуючої таблиці articles.
Узгоджений каталог завершує завантаження до виконання методів load() усіх плагінів, що дозволяє уникнути проблем із залежностями, спричинених незавантаженням деяких таблиць даних.
При першій активації плагіна система автоматично синхронізує конфігурації колекцій зі структурою бази даних. Якщо плагін вже встановлено та він працює, після додавання або зміни колекцій вам потрібно буде вручну виконати команду оновлення:
Якщо під час синхронізації виникнуть винятки або "брудні" дані, ви можете відновити структуру таблиці, перевстановивши застосунок:
Після визначення колекції система автоматично генерує відповідний ресурс, над яким ви можете безпосередньо виконувати операції CRUD через API. Детальніше дивіться у розділі Керування ресурсами.