일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- kubernetes
- worker
- PAT
- dockerfile
- 클라우드
- Javascript
- Docker-compose
- IaaS
- 용어정리
- 쿠버네티스
- 이론
- OpenStack
- RAID
- nodejs
- 네트워크
- MongoDB
- RAPA
- docker
- 명령어
- Docker Swarm
- gns3
- 개념
- node.js
- express
- PaaS
- 도커
- mysql
- git
- network
- 실습
- Today
- Total
목록express (8)
융융이'Blog
var express = require('express'); var path = require('path'); //cookieParser: 요청된 쿠키를 쉽게 추출할 수 있도록 도와주는 미들웨어 입니다. var cookieParser = require('cookie-parser'); // Morgan : 로그 기록을 남기는모듈 var morgan = require('morgan'); //connect-flash : 일회성 메시지들을 웹 브라우저에 나타낼때 사용하는 모듈 var flash = require('connect-flash'); //passport 모듈 const passport = require('passport..
MongoDB는 cascade On 과 같은 기능을 따로 제공하지 않는 거 같다. 아무리 검색을 해봐도 mongDB 모델링 할 때 따로 지정해주는 것이 없었던 같다.(앞서 1장에서 말했던 내용) 대신 MongoDB는 미들웨어를 통해서 cascade On과 같은 기능을 따로 만들어 줘야한다.(이걸 일일이 지정해준다니 미쳤군) 미들웨어를 만들어 낼 때 중요한 것은 pre와 post를 잘 구분해 줘야한다. 왜냐하면 내가 값을 저장할 때 pre를 이용하게 되면 생성전의 외래키값을 참조할 수 없기 때문이다. 번외로 나중에 ORM을 이용하면 belong_to 와 같은 것을 이용하면 편하게 구현할 것 같다. 다음에 알아보기로 하자 model/User.js ... //유저를 삭제할 때 UserSchema.pre('de..
controller/like.js module.exports = { toggle_like: async(req, res) => { const user = req.body.user; const { board_id } = req.params; let result = {}; const is_liked = await Like.findOne({$and: [{user: user}, {board: board_id}]}); // 해당 게시물에 좋아요 일때 if(is_liked){ await Like.findByIdAndDelete(is_liked); result = {data : false} } // 해당 게시물에 좋아요 아닐때 else{ //creat에 save명령어도 같이 실행된다. await Like.create(..
Comment.js module.exports = { //게시물에 댓글 작성하기 create: async (req, res) => { const { user } = req.body; let comment = new Comment({ content : req.body.content, board : req.params.board_id, user : user, }); result = await comment.save(); return res.json(result); }, //게시판에 해당하는 댓글 모두 불러오기 read: async (req, res) =>{ const result = await Comment.find({board: req.params.board_id}) .populate('user&#..
module.exports = { // 게시글 작성하기 create: async (req, res) =>{ const { title, content, user } = req.body; console.log(content); console.log(title); const find_user = await User.findById(user._id); const board = await Board.create({ title, content: req.body.content, user: find_user }); const result = await board.save(); console.log(result.user_id); return res.json(result); }, // 특정 게시글 불러오기 read: as..
User email : string/trim/unique/required name : string/trim password(암호화 x) string/최소 4글자 이상 Board title : String/require Content : String/require user : objectId/ref:'User' Likes : [objectId/ref:'User'] Comment content: String user : objectId/ref:'User' board: objectId/ref:'Board' Parent_comment:ObjectId/ref:'Comment' re_comments:[objectId/ref:'Comment'] Like User : objectId/ref:'User' Board: o..
주요기능 Router.js var express = require('express'); var router = express.Router({mergeParams: true}); const User = require('../controllers/user'); const Board = require('../controllers/board'); const Comment = require('../controllers/comment'); const Like = require('../controllers/like'); //user routes router.post('/user/signup', User.signUp); //회원가입 ..
mongoDB Cluster세팅 1. MongoDB(https://www.mongodb.com/)들어가서 로그인 2. New Project - 프로젝트 이름 - 사용자 권한 - 지역설정 ... - 보안 설정!( IP 허용 꼭 설정해줘야 합니다. Default로 허용 IP가 아무것도 없기 때문에 이 설정 안하시고 연동하면 Server connection rejection 에러가 뜹니다.!! 3. 컬렉션 만들기(User, Board, Comment, Like...등) GUI 환경에서 간단하게 만들수 있습니다. Express와 mongoDB의 연동 const { mongoDBurl } = require('../../../config/mongoDBconfig'); const MongoClient ..