Esta documentación ha sido traducida automáticamente por IA.
BelongsToManyRepository es un Relation Repository que se utiliza para gestionar relaciones BelongsToMany.
A diferencia de otros tipos de relaciones, las relaciones BelongsToMany requieren una tabla intermedia para su registro.
Al definir una relación de asociación en NocoBase, la tabla intermedia puede crearse automáticamente o especificarse explícitamente.
find()Busca objetos asociados
Signature
async find(options?: FindOptions): Promise<M[]>Detalles
Los parámetros de consulta son consistentes con Repository.find().
findOne()Busca un objeto asociado, devolviendo solo un registro.
Signature
async findOne(options?: FindOneOptions): Promise<M>count()Devuelve el número de registros que coinciden con las condiciones de la consulta.
Signature
async count(options?: CountOptions)Type
findAndCount()Consulta la base de datos para obtener un conjunto de datos y el recuento total bajo condiciones específicas.
Signature
async findAndCount(options?: FindAndCountOptions): Promise<[any[], number]>Type
create()Crea un objeto asociado
Signature
async create(options?: CreateOptions): Promise<M>update()Actualiza los objetos asociados que cumplen las condiciones.
Signature
async update(options?: UpdateOptions): Promise<M>destroy()Elimina los objetos asociados que cumplen las condiciones.
Signature
async destroy(options?: TargetKey | TargetKey[] | DestroyOptions): Promise<Boolean>add()Añade nuevos objetos asociados.
Signature
async add( options: TargetKey | TargetKey[] | PrimaryKeyWithThroughValues | PrimaryKeyWithThroughValues[] | AssociatedOptions ): Promise<void>Type
Detalles
Puede pasar directamente la targetKey del objeto asociado, o pasar la targetKey junto con los valores de los campos de la tabla intermedia.
Ejemplo
set()Establece objetos asociados.
Signature
Detalles
Los parámetros son los mismos que en add().
remove()Elimina la asociación con los objetos dados.
Signature
async remove(options: TargetKey | TargetKey[] | AssociatedOptions)Type
toggle()Alterna objetos asociados.
En algunos escenarios de negocio, a menudo es necesario alternar objetos asociados. Por ejemplo, un usuario puede marcar un producto como favorito, quitarlo de favoritos y volver a marcarlo. El método toggle permite implementar rápidamente una funcionalidad similar.
Signature
async toggle(options: TargetKey | { tk?: TargetKey; transaction?: Transaction }): Promise<void>Detalles
El método toggle comprueba automáticamente si el objeto asociado ya existe. Si existe, lo elimina; si no, lo añade.