inflearn logo
강의

Khóa học

Chia sẻ kiến thức

[Cập nhật] Sách giáo khoa Node.js - Từ cơ bản đến thực hành dự án

Tìm hiểu về truy vấn mối quan hệ

user 객체 읽는법

285

Inpa Skyrim

54 câu hỏi đã được viết

0

let { User, Comment } = require('./models');
let user = await User.findOne({
      include: [{
         model: Comment,
      }]
   });
   console.log("===================================================================================================")
   console.log(user)
   console.log(user.comment)
===================================================================================================
User {
  dataValues: {
    id: 1,
    name: 'zero',
    age: 24,
    married: false,
    comment: '자기소개1',
    created_at: 2021-11-09T09:05:55.000Z,
    Comments: [ [Comment] ]
  },
  _previousDataValues: {
    id: 1,
    name: 'zero',
    age: 24,
    married: false,
    comment: '자기소개1',
    created_at: 2021-11-09T09:05:55.000Z,
    Comments: [ [Comment] ]
  },
  _changed: Set(0) {},
  _options: {
    isNewRecord: false,
    _schema: null,
    _schemaDelimiter: '',
    include: [ [Object] ],
    includeNames: [ 'Comments' ],
    includeMap: { Comments: [Object] },
    includeValidated: true,
    attributes: [ 'id', 'name', 'age', 'married', 'comment', 'created_at' ],
    raw: true
  },
  isNewRecord: false,
  Comments: [
    Comment {
      dataValues: [Object],
      _previousDataValues: [Object],
      _changed: Set(0) {},
      _options: [Object],
      isNewRecord: false
    }
  ]
}
자기소개1

 

1번 질문 :

user객체를 쳤더니 저런식으로 나오는데,
어떻게 객체안의 키들을 거쳐서 user.comment가 나오는지 과정좀 설명해 주실수 있나요?

일단 제가 생각해본 봐로는
user.comment하면
User.dataValues.comment로 되는것 같아요. 근데 객체생김새가 다른데 어떻게 저렇게 되는지 궁금하네요..

 

2번 질문 :

그리고 user.Comments.comment(댓글 테이블의 comment필드)를 조회해보면 undefined 뜨네요. 어떻게 조회하나요?
(참고로 워크밴치에서 따로 제가 comment테이블에 insert into로 해주고, 서버도 다시 시작하였습니다)

nodejs mysql mongodb Sequelize

Câu trả lời 2

0

zerocho

네, user 속성에 접근하면 dataValues의 속성을 가져오는 게 맞습니다. 다양한 방식으로 가져올 수 있습니다. 실제로는 dataValues 속성에 접근하는 경우는 거의 드뭅니다. 바로 user.nickname 이런 식으로 가져오죠.

https://sequelize.org/master/class/lib/model.js~Model.html

0

Inpa Skyrim

2번 질문은 자세히 보니까, 배열안에 넣어져있어서,
user.Comments[0].comment
로 해결하였습니다!

리눅스 노드 설치시 패키지

0

162

0

socket.js 에서 referer로부터 roomId를 가져올 때

0

907

3

스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문

0

2281

2

a[title] 질문드립니다

0

377

1

리뉴얼 강의 및 공부 방법

0

583

1

jwt decode

0

1130

1

node.js 교과서 3판 질문드립니다

0

392

1

passport와 jwt

0

434

1

리뉴얼 강의

0

421

2

혹시 Node.js 교과서 3판 이북은 언제 나오나요?

0

355

1

몽고디비 사용자도 MYSQL부분을 들어야 하나요???

0

482

1

sql 쿼리 로그는 어떤 모듈이 작성하나요?

0

506

2

nunjucks res.render('error'); 작동을 안합니다.

0

512

1

질문있습니다.

0

348

1

multer 한글 파일 업로드시 파일명이 깨져요.

1

3536

1

수업자료는 어디있나요?

0

368

1

질문 있습니디

0

237

1

multer 사용시 file 외 name값은 못받나용?

0

418

1

코드 중복 부분 질문드립니다.

0

299

1

api 만드는 이유 질문드립니다.

0

288

1

Strategy의 done에 대해 질문드립니다.

0

367

1

안녕하세요 fs 권한 관련 질문드립니다

0

451

1

시퀄라이즈 연결질문...

0

500

2

res.setHeader vs res.cookie

0

1789

3