DatabaseTeamProject[2]

김병훈·2021년 10월 14일
0

데이터베이스론

목록 보기
8/11

server

  • mysql 서버열고, server 폴더에서 npm startnodemon 실행해주기
  • postman, mysqlworkbench 실행

1. Postman 테스트

전에 입력했던 hello worldres.send에서 res.json 으로 수정한 걸 get요청으로 확인해보기.

2. DBTeamProject (DB)에 데이터 insert하기(post 요청)

  • 예를 들어 회원가입 페이지에서 가입을 하면 정보가 post 요청으로 해당 테이블에 데이터가 insert 되는 구조인 것 같다. 하지만 지금은 그 페이지 구현이 안되어있기 때문에, postman으로 수동적으로 json 형식으로 된 데이터를 폼에 맞게 전송해보고 DB에 insert 되었는지 확인 해보려고 한다.

./routes/Home.js

에러 발생 "TypeError: Cannot read property 'create' of undefined"
  • 첫번째 const { Home } = require('../models'); 에서 Home이 아니라 Users를 입력했어야했다. models 폴더에서 Users 테이블을 만들었기 때문.
  • 두번째 router.post에서 await Home.create(home) 이 아닌 await Users.create(home)으로 했어야 했다.
    • Home.js 수정 후

./index.js

  • 추가한 코드
    app.use(express.json());

postman

  • 에러 발생
    처음에 고객전화번호에만 입력이 되지 않아서 몇번을 테이블 드랍을 했다가 다시 만들었다가를 반복하였는데, postman에서 post요청을 할 때 고객전화번호가 아닌 전화번호로 요청을 해서 입력이 되지않았었다. 근데 INTEGER로 설정하는게 int값이라는 걸 Manual | Sequelize 홈페이지에서 알게되었다 처음엔 int로 했다가 서버가 crash됐었다. 아무튼 INTEGER로 설정하였는데 전화번호가 0부터 시작해서 1012341234이렇게 입력이 되어가지고 그냥 STRING으로 변경해서 테이블을 만들어주었다.
  • Post요청
  • MySQLWorkbench 결과

3. listOfUsers 만들기

./routes/Home.js

  • 추가한 코드
router.get('/', async (req, res) => {
  const listOfUsers = await Users.findAll();
  res.json(listOfUsers);
});

결과 (postman)

  • 테이블에 한 컬럼만 존재해서 findAll 해도 하나만 나왔다.

4. git push

  • 오늘 마무리 작업을 하고 Push 를 하려고 커밋까지 넣었는데 작동이 되지않았다.

  • 커밋 내역도 올라와 있었는데 가장 바깥에서 push 해야하는건가하고 했는데도 되지 않았다.

  • 그러고보니 어제 홈페이지에서 default branchmain에서 master로 바꾸고 md파일도 하나 추가했었던게 커밋이 들어갔었는데 pull로 안 가져온 상태에서 push 를 하여 에러가 발생한 것 같다. 그래서 git pull 로 가져온 후에 다시 push 를 하였더니 완료 되었다.

  • pull 후 push

profile
블록체인 개발자의 꿈을 위하여

0개의 댓글