Sagen wir, ich User-Klasse mit einem haben: E-Mail-Feld. Angenommen, ich verwende activeadmin, um Benutzer zu verwalten.Activeadmin: wie für Zeichenketten filtern, die zwei oder mehr Suchbegriffen entsprechen
Einen Filter, der E-Mails zurückgibt, die eine Zeichenfolge übereinstimmen, z.B. "Smith", ist sehr einfach. In admin/user.rb
, schließe ich gerade die Linie
filter :email
Das gibt mir einen Filter-Widget, das die Arbeit erledigt.
Allerdings ist dieser Filter nicht mich für die Kreuzung von mehreren Begriffen suchen lassen. Ich kann nach E-Mails suchen, die "smith" enthalten, aber nicht nach E-Mails, die sowohl "smith" als auch ".edu" enthalten.
Google sagt mir, dass activerecord Ransack unter der Haube verwendet, und Ransack demo hat einen "fortgeschrittenen" Modus, der mehrere Begriffssuchen erlaubt.
Was ist der einfachste Weg, um einen mehr Begriff Such-Widget in activeadmin zu bekommen?
Idealerweise hätte ich gerne ein Widget, mit dem ich smith .edu
oder smith AND .edu
eingeben kann, um nach E-Mails zu filtern, die beide Begriffe enthalten.
arbeiten Das sieht ähnlich aus: http://www.scriptscoop.net/t/2e4ac6d6ff33/rails-active-admin-filter-for-multiple-words-search.html – TinMonkey
zu Verwenden Sie die MLtiple-Feldsuche, die Sie verwenden würden: filter: email_or_first_name_cont. Ich denke (habe es noch nie probiert, also bin ich mir nicht einmal sicher, ob es logisch ist anzunehmen, dass es funktioniert). Du könntest versuchen, filter: email_or_email_cont' :) –
Ich war damit zwar einfach, aber 'filter: email_or_email_cont' scheint nicht den Job erledigen. :(Danke trotzdem! –