如何连接字符串并需要在猫鼬中传入updateOne
How to concat string and need to pass in updateOne in mongoose
我需要更新状态,所以在这段代码中,我硬编码了键名 { user_status_is_active: isActivate },
。但我必须动态传递它。我试过 {
${this.entityName}_status_is_active: isActivate }
但它不起作用。谁能告诉我如何实现它?
// 动态值来自模式常量
this.entityName
updateStatus = async (request: Request, response: Response, isActivate: boolean) => {
try {
const dbResponse = await this.model.updateOne(
{ _id: request.params.id },
{ user_status_is_active: isActivate },
{ runValidators: true },
);
if ('nModified' in dbResponse && dbResponse.nModified! < 1) {
response.send(`${this.entityName} not modified.`);
} else {
response.send(`${this.entityName} ${isActivate ? 'activated' : 'deactivated'} successfully.`);
}
} catch (err) {
response.send(err.message);
}
};
您可以使用计算属性名称来完成。类似于:
const dbResponse = await this.model.updateOne(
{ _id: request.params.id },
{ [`${this.entityName}_status_is_active`]: isActivate },
{ runValidators: true },
);
我需要更新状态,所以在这段代码中,我硬编码了键名 { user_status_is_active: isActivate },
。但我必须动态传递它。我试过 {
${this.entityName}_status_is_active: isActivate }
但它不起作用。谁能告诉我如何实现它?
// 动态值来自模式常量
this.entityName
updateStatus = async (request: Request, response: Response, isActivate: boolean) => {
try {
const dbResponse = await this.model.updateOne(
{ _id: request.params.id },
{ user_status_is_active: isActivate },
{ runValidators: true },
);
if ('nModified' in dbResponse && dbResponse.nModified! < 1) {
response.send(`${this.entityName} not modified.`);
} else {
response.send(`${this.entityName} ${isActivate ? 'activated' : 'deactivated'} successfully.`);
}
} catch (err) {
response.send(err.message);
}
};
您可以使用计算属性名称来完成。类似于:
const dbResponse = await this.model.updateOne(
{ _id: request.params.id },
{ [`${this.entityName}_status_is_active`]: isActivate },
{ runValidators: true },
);