演示如何使用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軟件包自動提供的。
我們的數據庫非常簡單;我們只有3張桌子: film , actor和film_actor 。使用pg-search-sequelize ,我們從膠片和演員數據中創建一個實現的視圖。我們給電影名稱的重量最高,細節和鑄件的重量較低,其餘的細節順序如下。加權系統允許我們的搜索結果通過相關性來對其進行排序,具體取決於我們的設置方式。因為我們給電影名字的順序比演員名字更高,所以“華盛頓”的搜索查詢將產生電影“ Washington Heights”的結果,因為第一個在電影名稱中具有搜索查詢,而第二個則在電影的演員中具有搜索查詢。
然後,我們在/models中定義了我們實現的視圖模型,並將其註冊為pg-search-sequelize以便獲得搜索功能。
最後,我們將公開兩個API /film/:query ,然後在端口3000上啟動Express Server。
如果您有興趣在項目中使用此軟件包,請前往PG-Search-sequize。
如果您不喜歡任何東西,或者您有任何評論或建議,請在PG-Search-sequeles的問題部分中提交它們