web & develop/해결
node.js sequelize 값 증가 update 하는 방법 ( sequelize 더하기 )
Nerd_Lee
2021. 12. 31. 03:19
반응형
아.. 정말 이것때문에 애 먹었던 것 같다.
현재 만드는 포트폴리오 중 동영상 스트리밍 홈페이지 '나튜브'를 만들고 있는데
영상을 클릭할 때마다 조회수를 증가시킬 수 있도록 하려고 하는데 update문을 사용해봤다.
models.videoUploads
.update(
{
view: (여길 어떻게 해야하나...),
},
{
where: {
id,
},
}
)
.then((result) => {
res.send({ result: true });
})
.catch((err) => {
console.error(err);
res.status(500).send("업데이트에 문제가 생겼습니다.");
});
view의 값을 가져와서 +1 을 해줘야 하나.. 별 생각을 많이하고 별 코드를 다 짜봤지만, 에러만 생겼다.
역시 구글링을 해봐야하나? "node.js sequelize sqlite add update", "node.js sequelize sqlite plus update" 등등 더하기 관련 된 검색어를 다 써봤지만, 그냥 알고 있는 update 관련 된 내용뿐...
그래서 결국 sequelize api 문서를 살펴봤다.. 하나하나 살펴봤다
그렇게 찾은 것이, increment 함수가 따로 있었다. 이 것이 바로 값을 증가시킬수 있는 마법의 함수였다.
models.videoUploads
.increment({ view: 1 }, { where: { id } })
.then((result) => {
res.send({ result: true });
})
.catch((err) => {
console.error(err);
});
이렇게 사용하면, 해당 서버 url에 연결되면 id가 일치한 모델에 있는 view라는 값을 1씩 증가시킨다. 라는 뜻이다.
다들 이 글 보고 삽질 안하셨으면 하는 바램에 글을 적어봅니다.
반응형