pg-search-sequelize 패키지 사용 방법에 대한 데모 영화 및 액터 데이터베이스를 검색합니다.
이 예제의 데모를 여기에서 사용해보십시오.
전제 조건 : Docker. Docker를 사용하지 않으려면 Postgres와 Node.js 6.0.0 이상이 설치되어 있어야합니다.
Docker로 서버와 데이터베이스를 시작하려면 실행 :
. / init . sh 그게 다야. 이제 브라우저를 열고 http://localhost:3000/ 로 이동할 수 있습니다.
http://localhost:3000/film/x-men 으로 탐색하여 테스트 검색. 릴리스 연도별로 결과를 필터링하려면 쿼리를 http://localhost:3000/film/x-men releaseYear:2003 으로 수정하십시오. 우리는 릴리스 연도 필터를 하드 코드하지 않았다는 점에 유의하십시오. pg-search-sequelize 패키지에 의해 자동으로 제공됩니다.
우리의 데이터베이스는 매우 간단합니다. film , actor 및 film_actor 3 개의 테이블 만 있습니다. pg-search-sequelize 사용하여 필름 및 액터 데이터에서 구체화 된보기를 만듭니다. 우리는 영화 이름에 가장 높은 무게, 세부 사항 및 캐스트가 더 낮은 무게를 얻고 나머지 세부 사항은 순서대로 따릅니다. 가중 시스템을 통해 검색 결과를 설정하는 방법에 따라 검색 결과를 관련성으로 정렬 할 수 있습니다. 우리는 영화 이름에 캐스트 이름보다 더 높은 순서를 주었기 때문에 "Washington"의 검색 쿼리는 "Man on Fire"이전의 영화 "Washington Heights"의 결과를 얻을 수 있습니다. 첫 번째는 영화 이름에 검색 쿼리가 있고 두 번째는 영화의 캐스트에 있습니다.
그런 다음 /models 에서 구체화 된 뷰 모델을 정의하고 검색 기능을 얻을 수 있도록 pg-search-sequelize 에 등록합니다.
마지막으로, 우리는 두 개의 API /film/:query 노출시키고 포트 3000 에서 Express 서버를 시작합니다.
프로젝트 에서이 패키지를 사용하는 데 관심이 있으시면 PG-Search-Sectelize로 가십시오.
마음에 들지 않는 것이 있거나 의견이나 제안이 있으면 PG-Search-Sectelize의 문제 섹션에서 제출하십시오.