• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

이해 안가네요...

19.08.08 00:43 작성 조회수 175

0

도대체,

await post.addHashtags(result.map(r=>r[0])) 

이 어떻게 작동하는지 이해가 안가네요..

질문1.

posts 와 hashtags 는 다대다 관계로 

postHashtag 라는 조인 테이블이 생성된 상태입니다. 

이 라우터의 post.js 에서는 

현재 post는 

const post = await Post.create({
content:req.body.content,
img:req.body.url,
userId: req.user.id, //작성자 사용자 아이디.
});

이거를 담고 있으니까, 

post 테이블의 DB를 갖고있다는 뜻이고, 

A.addB 이 뜻이, A 와 B는 테이블을 말하는거죠?

그러면 post.addHashtags 라는게 

post.addhastags가 되야하는거 아닌가요?? 

왜 대문자Hashtags가 되야하나요?? 

 

질문2.

그리고, 

result.map(r=>r[0]) 이 부분 잘이해 안가네요 

설명좀 해주세요..

 

질문3.

그리고, 저는 애초에  디비 테이블짤때 이름을 hashtag 이런식으로 만들었는데

module.exports=(seqelize,DataTypes)=>(
seqelize.define('hashtag',{
title:{
type: DataTypes.STRING(15),
allowNull:false,
unique:true,
}
},{
timestamps:true,
paranoid:true
})
);

 

왜 workbench 로 보면, hashtags 로 만들어지는거죠? 

지가 알아서 s를 붙이네요...? 

답변 2

·

답변을 작성해보세요.

0

2. result의 꼴이 이차원배열이라 1차원 배열로 줄이는 코드입니다. console.log(result)를 코드 위에 넣어보세요.

3. 시퀄라이즈가 자동으로 테이블명을 첫 글자를 대문자로, 마지막에 s를 붙입니다.

0

1. 원래 add get remove set 뒤에는 대문자 테이블명이 옵니다.