查看 railscasts.com,我想知道 Ryan 如何为该站点实施搜索过滤器。如果搜索参数与数据库中的任何内容都不匹配,那么他将返回所有记录(例如,如果我们在 URL 中为搜索参数值键入无效参数,则返回所有记录,因为没有任何内容可供过滤)。如果它匹配数据库中的记录,他只返回那些匹配的记录。
是如何实现的?我可以只使用没有任何 gems/full-text-search 的 Active Record 吗?Arel 的查询会是什么样子?
另外,他如何实现过滤器链接(我们进行搜索后页面顶部的链接)?他是在解析每个搜索参数并通过一次删除一个搜索参数来生成页面上的链接吗?