1 몽고DB설치
- 몽고DB설치 경로(윈도우용)
https://www.mongodb.com/try/download/enterprise
* 몽고DB windows 설치법 - '히진쓰의 서버사이드 기술블로그' -
1) 몽구스 npm 설치하기
- root\> npm install --save mongoose
2) server.js 수정하기
// 중략... import mongoose from 'mongoose';
import data from './data';
import config from './config';
dbMain()
.then(()=>{
console.log('Conneted to mongodb.')
})
.catch( err => console.log(err));
async function dbMain(){
await mongoose
.connect(config.MONGODB_URL, {
useNewUrlParser : true,
useUnifiedTopology: true,
// useCreateIndex: true,
})
}
// 중략... |
[ root\backend\server.js ]
3) config.js 생성하기
- config.js에는 몽고DB와 관련된 환경변수 데이터가 저장된다. 클라우드 서버일 경우에는 보안key와 관리자 비밀번호가 저장되는데, 보안을 위해서는 dotenv같은 모듈을 설치해서 따로 관리해줘야 한다.
import dotenv from 'dotenv'; dotenv.config();
export default{
MONGODB_URL: process.env.MONGODB_URL
}
|
[ root\backend\config.js ]
4) dotenv설치하기
- root\> npm install --save dotenv
5) .env생성하기
- dotenv모듈을 설치했다면, root(최상단)폴더 바로 아래에 .env파일을 생성해준다.
- 사용할 DB명을 아래와 같이 지정한 후에 몽고DB서버를 실행한다면, 자동으로 해당 이름으로 된 DB가 생성된다.
6) 서버 실행하기
- 서버를 재실행한다.
- root\> npm start
2 DB스키마 생성
1) models폴더 생성
- root\backend\models\
2) userModel.js 생성
- 사용자 스키마를 생성한다.
import mongoose from 'mongoose'; const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: {
type: String, required: true, index: true, unique: true
},
password: { type: String, required: true},
isAdmin: {type: Boolean, required: true, default: false},
});
const User = mongoose.model('User', userSchema);
export default User;
|
[ root\backend\models\userModel.js ]
3) routers폴더 생성
- root\backend\routers 폴더 생성
4) userRouter.js 생성
- userRouter.js에 관리자DB가 생성되는지 테스트 해보자.
import express from 'express'; import User from '../models/userModel';
const userRouter = express.Router();
userRouter.get("/createadmin", async(req, res) => {
try {
const user = new User({
name: 'admin',
email: 'blogtest@gmail.com',
password: 'blogtest@',
});
const createUser = await user.save();
res.send(createUser);
} catch(err){
res.status(500).send({ message: err.message })
}
});
export default userRouter;
|
[ root\backend\routers\userRouter.js ]
5) 서버 실행
- 주소창에 'localhost:5000/api/users/createadmin'을 입력해보자. 관리자DB가 생성되었다면 성공이다.
|
[ root\backend\server.js ]
'웹개발 자료실 > No프레임워크 쇼핑몰제작Code' 카테고리의 다른 글
E-commerce Vanila JS [9편] 로그인 인증(2) (0) | 2021.12.10 |
---|---|
E-commerce Vanila JS [8편] 로그인 인증(1) (0) | 2021.12.10 |
E-commerce Vanila JS [6편] Cart 제작 (0) | 2021.12.08 |
E-commerce Vanila JS [5편] 랭킹, 상세페이지 제작 (1) | 2021.12.06 |
E-commerce Vanila JS [4편] 웹팩 & 바벨 & ESLint 적용 (0) | 2021.12.04 |
댓글