import { Injectable, Inject } from '@nestjs/common'
import { InjectRepository } from '@nestjs/typeorm';
import { Repository,Like} from 'typeorm'
import { Series } from './series.entity'
@Injectable()
export class SeriesService {
constructor(
@InjectRepository(Series)
private seriesRepository: Repository<Series>,
) { }
async findLike(title: string): Promise<Series[]> {
return this.seriesRepository.findBy({
title: Like(`%title%`)
});
}
}
并且报告“MongoDB 不支持查询生成器”。
那么模糊查询的功能应该如何实现呢?
好吧,我看了一遍又一遍的文档。现在我发现在find()中使用高级选项可以实现模糊搜索。像这样:
async findLike(title: string): Promise<Series[]> {
return this.seriesRepository.manager.getMongoRepository(Series).find({
where:{
title: { $regex: title }
}
});
}
所以,如果你想实现模糊搜索或者其他条件查询,你可以尝试一下。