๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Develop Study ๐Ÿ’ป/์ •๋ณด๊ธ€

[MongoDB] ์—๋Ÿฌ / throw error : Model.create is not a function

728x90

์ •๋ง...์˜ค๋žœ๋งŒ์— ๋ชฝ๊ณ ๋ฅผ ๋งŒ์ง€๋ ค๋‹ˆ ์—๋Ÿฌ๊ฐ€ ์ด๋งŒ์ €๋งŒ์ด ์•„๋‹Œ๋ฐ

๊ทธ์ค‘ ๊ฐ€์žฅ ํ™”๋‚˜๊ฒŒ ํ–ˆ๋˜ is not a function

๋ชฝ๊ณ  ๋ฒ„์ „ ์—…๊ทธ๋ ˆ์ด๋“œ๋กœ ์ด๋Ÿฐ ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๊ฒƒ์œผ๋กœ ๋ณด์ž„

์ •์•ˆ๋˜๋ฉด ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ...ํ•˜๊ธฐ ์ง์ „์— ํ•ด๊ฒฐํ•จ

 

 

์˜ค๋ฅ˜ ์ˆ˜์ • ๋ฐฉ๋ฒ•

module export ๋ฐฉ์‹์ด๋ž‘ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ๋ชจ๋“ˆ ๊ฐ€์ ธ์™€ ์“ฐ๋Š” ๋ฐฉ์‹ ์ˆ˜์ •


์ˆ˜์ • ์ „

๋ชจ๋“ˆ์„ ์–ธ

//์ˆ˜์ • ์ „
const mongoose = require("mongoose");

//schema create
const IdeaSchema = new mongoose.Schema({

  title: {
    type: String,
    required: true,
    trim: true
  },
  body: {
    type: String,
    required: true,
    trim: true
  },
  created: {
    type: Date,
    default: Date.now
  }
});


module.exports = mongoose.model("idea", IdeaSchema);

idea.ctrl.js - ์ปจํŠธ๋กค๋Ÿฌ

//์ˆ˜์ • ์ „
const IdeaModel = require("../../models/idea");
const mongoose = require("mongoose");

const create = (req, res) => {
  const { title, body, deadline } = req.body;
  if (!title || !idea || !deadline) return res.status(400).end();


//์˜ค๋ฅ˜๋‚˜๋Š” ์œ„์น˜
  IdeaModel.create({ title, body, deadline }, (err, result) => {
    if (err) {
      res.status(500).end();
      console.log(err);
    } else {
      res.status(201).json(result);
    }
  });
};

module.exports = { create }

 


์ˆ˜์ • ํ›„

๋ชจ๋“ˆ์„ ์–ธ

//์ˆ˜์ • ์ „
const mongoose = require("mongoose");

//schema create
const IdeaSchema = new mongoose.Schema({

  title: {
    type: String,
    required: true,
    trim: true
  },
  body: {
    type: String,
    required: true,
    trim: true
  },
  created: {
    type: Date,
    default: Date.now
  }
});

//์—ฌ๊ธฐ ์ˆ˜์ •
module.exports = {
  ideaCollection: mongoose.model("idea", IdeaSchema),
};

์ปจํŠธ๋กค๋Ÿฌ

//์ˆ˜์ • ์ „
const IdeaModel = require("../../models/idea");
const mongoose = require("mongoose");

const create = (req, res) => {
  const { title, body, deadline } = req.body;
  if (!title || !idea || !deadline) return res.status(400).end();


//์˜ค๋ฅ˜๋‚˜๋Š” ์œ„์น˜ - ์—ฌ๊ธฐ ์ˆ˜์ •
  IdeaModel.ideaCollection.create({ title, body, deadline }, (err, result) => {
    if (err) {
      res.status(500).end();
      console.log(err);
    } else {
      res.status(201).json(result);
    }
  });
};

module.exports = { create }

 

๊ด€๋ จ https://stackoverflow.com/questions/41455868/mongodb-find-is-not-a-function

create

728x90