기억 휘발 방지소

[Node.js / mongoose] findOne, findById로 검색을 해보자 본문

Database/ODM

[Node.js / mongoose] findOne, findById로 검색을 해보자

choice91 2021. 9. 20. 22:17
728x90
반응형

검색을 할 때에도 2가지 방법으로 할 수 있다.

  1. findById()
  2. findOne()

 

📌 Model.findById(id)

_id를 기준으로 단일 문서를 찾는다.

_id를 기준으로 질의하려면 findOne()대신에 findById()를 사용하라고 한다. 참고문서

 

Mongoose v6.0.6:

Parameters doc «Object» values for initial set optional «[fields]» object containing the fields that were selected in the query which returned this document. You do not need to set this parameter to ensure Mongoose handles your query projection. [skipI

mongoosejs.com

바로 아래에 있는 형태로 사용하면 된다.

await Model.findById(id);
export const postWrite = async (req, res) => {
  const { id } = req.params;
  const post = await Post.findById(id);
  return res.render("write", { pageTitle: post.title, post });
};

 

📌 Model.findOne(검색조건)

하나의 문서를 찾는 역할을 한다.

_id로만 검색을 한다면 findOne말고 findById를 사용하면 된다.

await Model.findOne({ name: "Kim" });

 

728x90
반응형