演示如何使用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的问题部分中提交它们