0. ๋ค์ด๊ฐ๊ธฐ ์์!
- User Model ์์ฑ์ด๋
- ํ์๊ฐ์ ์ ํ ๋ ๋ด๊ฐ ์ด ๋์ ์ ๋ณด๋ค์ด user database์ ๋ค์ด๊ฐ๋๋ฐ, ๊ทธ ์ ์ ์ ๋ณด๋ฅผ ๋ณดํธํ๊ธฐ ์ํ User Model, User Schema๋ฅผ ๋ง๋๋ ๊ฒ
- Model ์ด๋
- Schema๋ฅผ ๊ฐ์ธ์ฃผ๋ ์ญํ
- Schema ๋
- ์ํ์ ๊ด๋ จ๋ ๊ธ์ ์์ฑํ๋ค๊ณ ํ์ ๋, ๊ทธ ๊ธ์ ์์ฑํ ์ฌ๋์ด ๋๊ตฐ์ง, ์์ฑ์ ํ ๋ post์ ์ด๋ฆ์ด ๋ญ์ง ์์์ผ ํ๊ธฐ ๋๋ฌธ์, ๊ทธ ์ด๋ฆ์ ๋ํ ํ์ ์ ๋ญ์ง, ๋ฑ๋ฑ์ ์ง์ ํ๋ ๊ฒ
- ์ ๋ณด๋ค์ ์ง์ ํด์ฃผ๋ ๊ฒ
1. ๋ชจ๋ธ์ ์์ฑํ ์๋ก์ด ํด๋ ๋ง๋ค๊ธฐ
1) models ๋ผ๋ ์๋ก์ด ํด๋ ์์ฑ
2) models ๋ด์ User.js ๋ง๋ค๊ธฐ
2. User.js์ ์คํค๋ง ์์ฑ
const mongoose = require('mongoose')
const userSchema = mongoose.Schema({
name: {
type: String,
maxlength: 50
},
email: {
type: String,
trim: true, // ๋น์นธ์ ์์ ์ฃผ๋ ์ญํ
unique: 1
},
password: {
type: String,
minlength: 5
},
lastname: {
type: String,
maxlength: 50
},
role: { // user๊ฐ ๊ด๋ฆฌ์๊ฐ ๋ ์๋ ์๊ณ ์ผ๋ฐ์ ์ ๊ฐ ๋ ์๋ ์๊ธฐ ๋๋ฌธ
type: Number, // ์๋ฅผ ๋ค์ด, number๊ฐ 1์ด๋ฉด ๊ด๋ฆฌ์, 0์ด๋ฉด ์ผ๋ฐ์ ์
default: 0
},
image: String,
token:{
type: Number
},
tokenExp: { // token์ด ์ ํจํ๋ ๊ธฐ๊ฐ
type: Number
}
})
const User = mongoose.model('User', userSchema) // ๋ชจ๋ธ์ด ์คํค๋ง ๊ฐ์ธ์ฃผ๊ธฐ
module.exports = { User } // ๋ค๋ฅธ ๊ณณ์์๋ ์ฌ์ฉํ ์ ์๊ฒ export
โ ๋ฐ๋ผํ๋ฉฐ ๋ฐฐ์ฐ๋ ๋ ธ๋, ๋ฆฌ์กํธ ์๋ฆฌ์ฆ - ๊ธฐ๋ณธ๊ฐ์ ํด๋ก ์ฝ๋ฉ ์ ๋๋ค.
'Backend ๐ > Node.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Node] ๋น๋ฐ ์ค์ ์ ๋ณด ๊ด๋ฆฌ (0) | 2024.08.01 |
---|---|
[Node] BodyParser, PostMan, ํ์ ๊ฐ์ ๊ธฐ๋ฅ (+ Nodemon) (0) | 2024.07.31 |
[Node] GIT ์ค์น, Github ์ฐ๊ฒฐ (2) | 2024.07.31 |
[Node] Mongo DB ์ฐ๊ฒฐ (0) | 2024.07.30 |
[Node] NODE JS, EXPRESS JS ๋ค์ด๋ก๋ ํ๊ธฐ (0) | 2024.07.30 |