How can I get soft deleted entity from typeorm postgreSQL?
I am trying to get soft deleted doc from postgreSQL
database using typeorm
find, findOne or query builder get/getMany
methods, but it always return undefined. Is there a way to get deleted value?
By the docs it should only set a timestamp for deletedAt
, and it definitely works, because I can update same record using update where from query builder.
I found out there is another solution. You can use the querybuilders .withDeleted()
method to also return soft deleted entities.
Example
const query = await this.manager
.getRepository(FolderEntity)
.withDeleted()
.createQueryBuilder('folder')
.leftJoinAndSelect('folder.subStatus', 'status')
.getMany()
Actually referring to the findOptions doc you can pass the withDeleted
boolean that will retrieve the soft deleted rows.
for example:
const result = await this.repo.find({ where: { id }, withDeleted: true })