• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Node.js, Express 게시판 ID에 해당하는 detail.ejs 열어주는 작업이 안됩니다.

ID에 해당하는 detail.ejs 열어주는 작업이 안됩니다.

2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 글쓴이
  • #107701

    김태홍
    참가자
    app.get('/detail/:id', async function(req, 응답){
        let result = await db.collection('post').findOne({_id : new ObjectId(req.params.id)})
       응답.render('detail.ejs', {result : result})
    위의 코드에서 에러가 나서 몇 가지 시도해봤는데 전혀 이유를 모르겠습니다.
    1. result = await db.collection('post').findOne({_id : new ObjectId('65865c611359df842844deeb')})
    위와 같이 입력했을 때 main.css가 적용되지 않습니다. 
    2. ObjectId(req.params.id)를 사용하기만 하면
    BSONError: Argument passed in must be a string of 12 bytes or a string of 24 hex characters or an integer
    와 같은 에러가 뜹니다.
    
    const { ObjectId } = require('mongodb') 코드 추가했습니다. 이거 문제는 아닌 것 같고..
    
    
    
    혹시 뭐가 문제인지 알고 계실까요..?
    아래는 쓰다 만 코드 제출합니다.
    
    server.js
    app.get('/detail/:id', async function(req, 응답){
        console.log(new ObjectId(req.params.id))
        //const objID = new ObjectId(req.params.id)
        //console.log('ObjectId:', objID)
        //let result = await db.collection('post').findOne({_id : objID}) 
        //console.log(result)
        //result = await db.collection('post').findOne({_id : new ObjectId('65865c611359df842844deeb')})
        //console.log(result)
        응답.render('detail.ejs')
    })
    detail.ejs
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <link href="main.css" rel="stylesheet">
    </head>
    <body class="grey-bg">
        <%- include('nav.ejs') %>
        <div class="detail-bg">
            <h4>sdf</h4>
            <p>sdf</p>
        </div>
      
    </body>
    </html>
     
    #107729

    codingapple
    키 마스터
       <link href="/main.css" 로 바꿔봅시다
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠