【发布时间】:2015-10-23 19:09:40
【问题描述】:
假设我有一个带有 :email 字段的 User 类。假设我正在使用 activeadmin 来管理用户。
制作一个过滤器,返回匹配一个字符串的电子邮件,例如“史密斯”,很简单。在admin/user.rb 中,我只包含了这一行
filter :email
这给了我一个过滤器小部件来完成这项工作。
但是,此过滤器不允许我搜索多个术语的交集。我可以搜索包含“smith”的电子邮件,但不能搜索同时包含“smith”和“.edu”的电子邮件。
Google 告诉我,activerecord 在后台使用Ransack,而Ransack demo 具有允许多个术语搜索的“高级”模式。
将多词搜索小部件放入 activeadmin 的最简单方法是什么?
理想情况下,我想要一个允许我输入 smith .edu 或 smith AND .edu 以过滤包含这两个术语的电子邮件的小部件。
【问题讨论】:
-
这看起来很相似:scriptscoop.net/t/2e4ac6d6ff33/…
-
要使用多字段搜索,您可以使用
filter :email_or_first_name_cont。我认为(从未尝试过,所以甚至不确定假设它会起作用是否合乎逻辑)您可以尝试filter :email_or_email_cont:) -
我用它就是这么简单,但
filter :email_or_email_cont似乎并没有完成这项工作。 :( 还是谢谢!
标签: ruby-on-rails activerecord activeadmin ransack