codestates / codestates/Bobpago

[๐ŸšจErr Handling] ๋ ˆ์‹œํ”ผ ์ˆ˜์ •์‹œ ์žฌ๋ฃŒ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œ ํ–ˆ์„๋•Œ db๋‚ด์—์„œ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ์—๋Ÿฌ

Open
#146 0 comments 0 reactions 1 assignee Claimed by @tjdgns5272 View on GitHub
bug complete error handling
Dominant language
TypeScript
Stars
5
Forks
3
PR merge metrics
No merged PRs in 30d

Description

### ์–ด๋–ค ์—๋Ÿฌ์ธ๊ฐ€์š”?

>๋ ˆ์‹œํ”ผ ์ˆ˜์ •์‹œ ์žฌ๋ฃŒ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œ ํ–ˆ์„๋•Œ db๋‚ด์—์„œ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š” ์˜ค๋ฅ˜๊ฐ€ ์žˆ์—ˆ๋‹ค.

์ˆ˜์ •๋œ ์žฌ๋ฃŒ์˜ ์•„์ด๋””๋กœ ์ด๋ค„์ง„ ๋ฐฐ์—ด์„ ์ž…๋ ฅ ๋ฐ›๋Š”๋ฐ, ๊ธฐ์กด ์žฌ๋ฃŒ id ๋ฐฐ์—ด๊ณผ ๊ธธ์ด๊ฐ€ ์ผ์น˜ํ•˜๋ฉด ๋ฌธ์ œ ์—†์ด ์—…๋ฐ์ดํŠธ๊ฐ€ ๋˜์—ˆ์œผ๋‚˜
์žฌ๋ฃŒ๊ฐ€ ํด๋ผ์ด์–ธํŠธ์—์„œ ์ถ”๊ฐ€๋˜๊ฑฐ๋‚˜ ์‚ญ์ œ๊ฐ€ ๋˜์–ด์„œ ๋ฐฐ์—ด๊ธธ์ด๊ฐ€ ๋‹ฌ๋ผ์ง„๊ฐ’์„ ์„œ๋ฒ„์—์„œ ๋ฐ›๊ฒŒ๋˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

### ์—๋Ÿฌ ํ•ธ๋“ค๋ง ๋ฐฉ๋ฒ•

- ์„œ๋ฒ„ ๋กœ์ง์„ ์žฌ๋ฃŒ id๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฐฐ์—ด ๊ธธ์ด์˜ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์กฐ๊ฑด๋ฌธ์œผ๋กœ ๋ถ„๊ธฐํ•˜์—ฌ ์ฒ˜๋ฆฌํ–ˆ๋‹ค.

```js
// recipe.service.ts
async updateRecipeIngredientId(ingredientId, recipeId) {
console.log(ingredientId, recipeId);
const ingredients = await this.recipeIngredientRepository.find({
where: { recipeId },
});
// ๊ธฐ์กด์— ๊ฐ–๊ณ ์žˆ๋˜ ์žฌ๋ฃŒ ๊ธธ์ด์™€ ์ˆ˜์ •๋œ ์žฌ๋ฃŒ์˜ ๊ธธ์ด๊ฐ€ ์ผ์น˜ ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ
if (ingredients.length !== ingredientId.length) {
// ํ…Œ์ด๋ธ”์— ์žˆ๋˜ ๊ธฐ์กด ๋ฐ์ดํ„ฐ๋Š” ์‚ญ์ œํ•œ๋‹ค
await this.recipeIngredientRepository.delete({ recipeId });

// ์ƒˆ๋กญ๊ฒŒ ์žฌ๋ฃŒ id๋ฅผ ๋ ˆ์‹œํ”ผ id ๊ธฐ์ค€์œผ๋กœ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค
await this.createRecipeIngredientId(ingredientId, recipeId);
} else {
for (let i = 0; i < ingredients.length; i++) {
ingredients[i].ingredientId = ingredientId[i];
}
await this.recipeIngredientRepository.save(ingredients);
}
}
```

### ์—๋Ÿฌ ํ•ธ๋“ค๋ง์„ ์œ„ํ•ด ์ฐธ๊ณ ํ•œ ๋ ˆํผ๋Ÿฐ์Šค ๋งํฌ

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.