[wetube]3.12
5338 단어 TILCloneCordingCloneCording
📃 결과물
비디오 search 가능
📃 목표
- url의 query로부터 값을 가져와서 검색.
- regular expression을 사용하여 해당값이 들어간 데이터를 검색.
📃 과정
Searching Videos
- 검색을 위한 form. get 할때
term
으로 넘겨준다.
'up'이라는 단어가 들어간 제목의 데이터를 검색 해보겠다.
.header_column
form(action=routes.search, method="get")
input(type="text", placeholder="Search by term...",name="term")
Searching Videos
- 검색을 위한 form. get 할때
term
으로 넘겨준다.
'up'이라는 단어가 들어간 제목의 데이터를 검색 해보겠다.
.header_column
form(action=routes.search, method="get")
input(type="text", placeholder="Search by term...",name="term")
2.url 주소 가져오기
term 에 해당하는 값을 request로 부터 가져온다 . req.query.term 과 같은 코드. form 에 입력한 값이 searchingBy
값이 된다.
const {
query: { term: searchingBy },
} = req;
console.log(searchingBy);
+이렇게 해주면 rating 값을 이용해서 해당 별점 이상 값만 검색할 수도 있다.
const {
query: { rating: searchingBy }
} = req;
- video 는 검색된
searchingBy
값이 들어간 video 를 다시 받아오기 위해서 let 으로 선언.
$regex:searchingBy
:searchinBy가 포함된 데이터를 가져온다.
$oprions:"i"
: 대/소문자 구별하지 않음
export const search = async (req, res) => {
const {
query: { term: searchingBy },
} = req;
let videos = [];
try {
videos = await Video.find({
title: { $regex: searchingBy, $options: "i" },
});
} catch (error) {
console.log(error);
}
res.render("search", { pageTitle: "Search", searchingBy, videos });
};
📃 참고
https://expressjs.com/ko/api.html
https://fors.tistory.com/403 쿼리 옵션
Author And Source
이 문제에 관하여([wetube]3.12), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@6mn12j/wetube3.12저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)