인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

비전공자를 위한 진짜 입문 올인원 개발 부트캠프

상품 생성, 조회 API 구현

다른건 다되는데 typeerror 가 뜹니다..

작성

·

274

0

1.<pre>TypeError: Cannot read properties of undefined (reading &#39;create&#39;)

const express = require("express");
const cors = require("cors");
const { application } = require("express");
const app = express();
const port = 8080;
const models = require("./models");
app.use(express.json());
app.use(cors());
app.get("/products", (req, res) => {
  const query = req.query;
  console.log("QUERY:", query);
  res.send({
    products: [
      {
        id: 1,
        name: "농구공",
        price: 100000,
        seller: "조던",
        imgUrl: "images/products/basketball1.jpeg",
      },
      {
        id: 2,
        name: "축구공",
        price: 50000,
        seller: "메시",
        imgUrl: "images/products/soccerball1.jpg",
      },
      {
        id: 3,
        name: "키보드",
        price: 10000,
        seller: "그랩",
        imgUrl: "images/products/keyboard1.jpg",
      },
    ],
  });
});
app.post("/products", (req, res) => {
  const body = req.body;
  const { name, description, price, seller } = body;
  models.Product.create({
    name,
    description,
    price,
    seller,
  })
    .then((result) => {
      console.log("상품 생성 결과 : ", result);
      res.send({
        result,
      });
    })
    .catch((error) => {
      console.error(error);
      res.send("상품 업로드에 문제가 생겼습니다.");
    });
});

app.get("/products/:id/events/:eventId", (req, res) => {
  const params = req.params;
  const { id } = params;
  res.send();
});

app.listen(port, () => {
  console.log("그랩의 쇼핑몰 서버가 돌아가고 있습니다.");
  models.sequelize
    .sync()
    .then(() => {
      console.log("DB 연결 성공");
    })
    .catch((err) => {
      console.error(err);
      console.log("DB 연결 에러 ㅠ ");
      process.exit();
    });
});

그 전까진 다 실행 잘되고 테이블도 잘 만들어졌는데 postman 에 send 를 누르면 이렇게 나옵니다

스크린샷, 2022-09-01 21-12-48.png

body 안에는 잘 들어가는데 create 에서 문제가 생긴거 같습니다. ㅠㅠ

답변 2

0

오래된 글이긴하나
동일한 오류 겪었는데 저와 같은 원인인지 중복체크 해보시면 좋을 것 같습니다.

  1. product.js 오류
    [models] > [product.js] > product 값이 대소문자가 틀리는 경우가 있었구요

  2. POSTMAN JSON 형식 오류
    POSTMAN 에서 JSON 형식에서 마지막 변수에 ,를 붙인다던가 "" 변수타입을 틀린다던가

0

그랩님의 프로필 이미지
그랩
지식공유자

음 models쪽에 Product가 undefined여서 생기는 이슈 같은데요.

혹시 models 등록은 잘 되어있을까요?

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기