gpt4 book ai didi

node.js - 如何在 NestJS 上为 MongoDB 实现存储库设计模式

转载 作者:行者123 更新时间:2023-12-04 11:54:30 26 4
gpt4 key购买 nike

我正在尝试弄清楚如何在使用 MongoDB 和 mongoose 数据库的 NestJS 上实现存储库设计模式

最佳答案

存储库可以注入(inject)到服务中,它应该包含在模块内的 providers 数组中。

// user.service.ts
@Injectable()
export class UserService {
constructor(private readonly userRepository: UserRepository) {}

async findAll(): Promise<User[]> {
return this.userRepository.findAll();
}
}
// user.repository.ts
@Injectable()
export class UserRepository {
constructor(@InjectModel(User.name) private userModel: Model<UserDocument>) {}

async findAll(): Promise<User[]> {
return this.userModel.find().exec();
}
}
// user.module.ts
@Module({
imports: [
MongooseModule.forFeature([{ name: User.name, schema: UserSchema }]),
],
providers: [UserRepository, UserService],
exports: [UserService],
})
export class UserModule {}

关于node.js - 如何在 NestJS 上为 MongoDB 实现存储库设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56924090/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com