tengo mi columna typeorm como esta, lo que quiero es una matriz de objetos JSON que logro obtener.
@Column({ type: 'jsonb', array: false, default: () => "'[]'", nullable: false, }) tokens!: Array<{ token: string }>;así es como se ve el campo, y estoy bien con eso, lo que quiero es encontrar un documento con un token en particular, así que se me ocurrió el siguiente código, pero devuelve una matriz vacía.
const user = await User.find({ where: { _id: decoded._id, tokens: { token: token } } });normalmente cuando estoy usando mongooe puedo hacer que esto funcione usando
const user = await User.findOneBy({_id: decoded._id, "tokens.token": token,}); and this returns a particular user, with the id and token string passed.Quiero ayuda sobre cómo encontrar un usuario usando la identificación y la cadena de token dentro de una matriz de objetos, gracias.
TypeORM no admite de forma nativa consultas en columnas jsonb de jsonb . Realizar una consulta sobre los datos en una columna jsonb requeriría que emita una consulta sin formato o que escriba su propia cláusula WHERE en .where o .addWhere de un generador de consultas (doc ).
Como referencia, la documentación de sintaxis de consulta jsonb se puede encontrar aquí .