Ich benutze das EasyGrid-Plugin und muss Werte finden, bei denen ein ganzzahliges Feld wie '% 001%'
ist %Vor%Aber ilike funktioniert nicht mit Integer. Wie man es macht?
Ich habe versucht zu tun:
%Vor%aber es funktioniert nicht.
Wenn id
eine Ganzzahl in der Datenbank ist, dann macht ilike
nicht wirklich viel Sinn und es gibt wahrscheinlich eine bessere Möglichkeit, das zu tun, was Sie versuchen zu tun (z. B. ein Typfeld oder etwas hinzufügen Domain-Objekt und Filter nach Typ)
Sie sollten jedoch in der Lage sein, Folgendes zu tun (ungetestet):
%Vor%Die von tim_yates mit sqlRestriction angebotene Lösung würde in Version 1.5.0 von easygrid funktionieren. Einer der Hauptunterschiede zu 1.4.x besteht darin, dass die gorm-Datenquelle nicht mehr DetachedCriteria verwendet, sondern Criteria, die direkt auf die Kriterien-API von Hibernate verweist.
So können Sie es in der letzten Version versuchen. (Denken Sie daran, dass das Upgrade Ihre bestehenden Gitter zerbrechen könnte. Es gibt auch viele andere Änderungen)
Eine weitere kleine Beobachtung ist, dass "initialCriteria" nicht der richtige Ort ist, um solche Sachen zu machen. (Es ist nicht falsch, aber es gibt eine Eigenschaft 'globalFilterClosure' zum Anwenden von spaltenunabhängigen Filtern)
Ich habe den Code von @tim_yates und meins gemischt:
%Vor%Ich habe es mit einer h2 in-memory db versucht und es funktioniert, aber ich bin mir nicht sicher über zwei Dinge:
lpad
Syntax Konsistenz über alle Db-Engines YMMV
Folgende Kriterien funktionieren nicht, wenn Sie in Ihrem Textfeld nach einem Textzeichen suchen, indem Sie Fehler wie 12dfdsf als Ihre Such-ID verwenden. Es gibt Ihnen eine Ausnahme
%Vor%Zur besseren Verwendung können Sie folgende Kriterien verwenden
%Vor%