Ця документація була автоматично перекладена штучним інтелектом.
BelongsToManyRepository — це Relation Repository для роботи з відносинами типу BelongsToMany.
На відміну від інших типів відносин, зв'язки BelongsToMany вимагають запису через проміжну таблицю.
При визначенні асоціативного зв'язку в NocoBase проміжна таблиця може створюватися автоматично або бути явно вказаною.
find()Знаходить асоційовані об'єкти
Підпис
async find(options?: FindOptions): Promise<M[]>Деталі
Параметри запиту узгоджуються з Repository.find().
findOne()Знаходить асоційований об'єкт, повертаючи лише один запис
Підпис
async findOne(options?: FindOneOptions): Promise<M>count()Повертає кількість записів, що відповідають умовам запиту
Підпис
async count(options?: CountOptions)Тип
findAndCount()Запитує базу даних для отримання набору даних та загальної кількості результатів за певними умовами.
Підпис
async findAndCount(options?: FindAndCountOptions): Promise<[any[], number]>Тип
create()Створює асоційований об'єкт
Підпис
async create(options?: CreateOptions): Promise<M>update()Оновлює асоційовані об'єкти, що відповідають умовам
Підпис
async update(options?: UpdateOptions): Promise<M>destroy()Видаляє асоційовані об'єкти, що відповідають умовам
Підпис
async destroy(options?: TargetKey | TargetKey[] | DestroyOptions): Promise<Boolean>add()Додає нові асоційовані об'єкти
Підпис
async add( options: TargetKey | TargetKey[] | PrimaryKeyWithThroughValues | PrimaryKeyWithThroughValues[] | AssociatedOptions ): Promise<void>Тип
Деталі
Ви можете безпосередньо передати targetKey асоційованого об'єкта або передати targetKey разом зі значеннями полів проміжної таблиці.
Приклад
set()Встановлює асоційовані об'єкти
Підпис
Деталі
Параметри такі ж, як у add().
remove()Видаляє асоціацію із заданими об'єктами
Підпис
async remove(options: TargetKey | TargetKey[] | AssociatedOptions)Тип
toggle()Перемикає асоційовані об'єкти.
У деяких бізнес-сценаріях часто виникає потреба перемикати асоційовані об'єкти. Наприклад, користувач може додати товар до обраного, видалити його звідти, а потім знову додати. Метод toggle дозволяє швидко реалізувати подібну функціональність.
Підпис
async toggle(options: TargetKey | { tk?: TargetKey; transaction?: Transaction }): Promise<void>Деталі
Метод toggle автоматично перевіряє, чи існує асоційований об'єкт. Якщо він існує, його буде видалено; якщо ні — додано.