인프런 커뮤니티 질문&답변
데이터 수정에 대해 질문드립니다.
작성
·
255
0
User 테이블이 아래와 같고,

Post 테이블이 아래와 같을 때,

DB의 내용은 바꾸지 않고, 제가 사용할 코드 상에서만 홍길동을 김민수로 바꾸고 싶습니다.
이 때, 복사를 사용해야 할 지가 고민입니다.
1.
const post = await Post.findOne({
where: {id: 1},
include: [{ model:User }]
});
const copyPost = {...post};
copyPost.name = "김민수";
2.
const post = await Post.findOne({
where: {id: 1},
include: [{ model:User }]
});
post.name = "김민수";
1번처럼 복사를 사용할까요 아니면
2번처럼 post 식별자를 그냥 쓰되 post.save를 안하는 걸로 사용할까요?
만약 1번이 더 나은 해결책이라면
1번처럼 얕은 복사를 해야 하나요 아니면 깊은 복사를 해야 하나요? 조언 부탁드립니다.
답변 1
1
바스니카
질문자
감사합니다. toJSON 붙이니까 save를 막아주네요. 혹시 sequelize가 반환하는 object는 타입이 뭔지 알 수 있을까요? toJSON을 안 붙이면 보기 힘들게 나오더라고요.





새로운 json 객체를 하나 만들어서 요소들을 넣으라는 말씀이신가요?