MongoDB에 데이터를 저장할 땐 _id라는 값을 꼭 넣으셔야합니다. 그래야 삭제도 쉽고 나중에 수정도 쉬우니까요. 아까 모르고 안넣으셨다고요? 괜찮습니다.안넣으시면 MongoDB에서 알아서 ObjectId() 어쩌구 이런걸 만들어서 아이디를 강제로 부여해줍니다.
근데 너무 복잡하죠? 그러니까 애초에 저장할 때 직접 _id를 달아봅시다.
insertOne 함수 안에 _id : 1 이라는 항목을 요로케 써주시면… 번호달아서 저장하기 끝입니다.
그런데 1이라고 하드코딩을 해버렸네요. 글 쓸 때마다 항상 _id : 1일 수는 없죠?
2번째 글이면 _id: 2,
3번째 글이면 _id : 3이 되어야 합니다.
다른 DB에선 _id를 자동으로 1증가시켜서 추가해주세요~ 이런 기능이 있는데 (Auto Increment라고 합니다)
MongoDB는 그런거 없습니다.
그래서 여러분이 직접 지금까지 몇번 게시물을 발행했는지를 기록하셔야합니다.
그리고 방금 코드를 이렇게 바꾸면 되겠죠?
app.post('/add', function(요청, 응답){
// counter라는 콜렉션에서 totalPost라는 총 게시물 갯수 숫자를 가져와서
var 총게시물갯수 = 여기에 저장함
// 그 다음에 밑에 코드 실행
db.collection('post').insertOne( { _id : (총게시물갯수 + 1), 제목 : 요청.body.title, 날짜 : 요청.body.date } , function(){
console.log('저장완료')
응답.send('전송완료');
});
});