Правильно ли делать такие обновления информации в проекте? Или же лучше как-то все делать через 1 запрос, без контроля ошибок?
async updateProduct(id, productData) {
const product = await Product.findById(id);
if (!product) {
throw new Error(PRODUCT_NOT_FOUND);
}
if (await this.checkProductExist(productData, id)) {
throw new Error(PRODUCT_ALREADY_EXIST);
}
const model = await modelService.getModelById(productData.model)
productData.model = model.name;
return Product.findByIdAndUpdate(id, productData, { new: true });
}
П.С. тут 3 обращения к базе...