【发布时间】:2013-04-23 05:07:54
【问题描述】:
我有三个表,分别表示品牌、网站和项目类别。我想同时在所有三个表中执行搜索功能。我使用 solr 进行搜索。以前我是一次搜索一个。这意味着如果用户输入“阿迪达斯”,那么我在品牌表中搜索,如果没有得到,那么我在网站表中搜索,依此类推。根据获得的结果,我在其他一些表中搜索说 main_nav_url 使用该brand_id 或 site_id 或 category_id 并从 main_nav_url 表中获取所需的列。后来我遇到了这种冲突,例如如果品牌和网站表中都存在“阿迪达斯”名称,我只能得到品牌的搜索结果。
请帮我解决这个问题,我可以同时在所有三个表中搜索,根据获得的结果提取它们的brand-id和site_id category_id,然后在main_nav_url表中执行一次搜索。
【问题讨论】:
-
您好,请参阅“Ransack gem”搜索gem,它有助于使用“高级搜索查询”在时间搜索多表数据。请参阅 rails cast 教程:370。
标签: ruby-on-rails solr