有一个模块实现了控制器,服务和模型,我想在其他配置下重复使用。 该模块是在不同上下文国家/地区运营的服务。我想指定一个简单的参数国家/地区,主要用于更改目标数据库中模型的集合名称和一个路由参数。
例如
@Module({
})
export class XUserModule{
static register(country: string): DynamicModule{
return{
module: XUserModule,
imports: [
MongooseModule.forFeature(
[
{ name: 'User', schema: UserSchema },
],
dbname.fromcountry(country)
)
],
controllers: [
XUserController
],
providers: [
XUserService,
],
exports: [
XUserService,
MongooseModule
]
}
}
}
@Controller()
export class XUserController {
constructor(
private xUserService: XUserService
) {
}
@Get('COUNTRY_CODE_HERE/test')
async test(
): Promise<string>{
return 'OK'
}
}
XUserModule.register('dz') // ...
我的问题是,我该如何创建这样的控制器。为了能够将country
信息转发到模块内的服务和控制器。
提前谢谢。