2016-04-07 6 views
0

Ich versuche, Datensätze in Schienen Admin-Panel zu suchen, indem Sie einen Wert von 569785067261691692240000 in das Filtertextfeld eingeben. Ich erhalte einen Fehler "bignum zu groß, um in` long 'umzuwandeln ".bignum zu groß, um in `lange 'Schienen zu konvertieren Admin

Die Suche funktioniert einwandfrei, wenn der Text im Filtertextfeld alphanumerisch ist, aber nicht funktioniert, wenn der Text numerisch ist.

Kann nicht verstehen, was das Problem ist.

Ich benutze 0.6.3 Version der Schienen admin gem.

+0

Wie lautet die Schemadefinition für Ihre Tabelle? Das Admin-Tool erwartet möglicherweise 32-Bit unsigniert. – tadman

+0

Rails Admin Panel hat ein Suchfeld, in dem nur Werte angegeben werden können (alle Typen). Es fragt nicht nach Feldern, auf denen gesucht werden muss. Es sucht automatisch nach allen Dokumenten einer Mongo-Sammlung. ID-Feld ist BSON-Typ-Feld in der definierten Mongo-Tabelle, die entweder numerisch oder alphanumerisch sein kann. Die Suche funktioniert für alphanumerische Werte, funktioniert aber nicht für numerische Werte. –

+0

Sollte dieses "Mongodb" markieren, wenn das anwendbar ist. – tadman

Antwort

0

Ihr Feld könnte als ein Integer/Long-Feld definiert sein, das auf 2^32 oder 2^64 beschränkt ist. Machen Sie eine Zeichenfolge, wenn Sie eine so lange Zahl eingeben möchten.

+0

Id ist kein interger/langes Feld. Ich benutze mongoid gem, um ID für eine Sammlung zu generieren. Dieses Juwel erzeugt ein eindeutiges Zeichenfolgenfeld (4 Bytes Zeitstempel + 3 Bytes Maschinen-ID + 3 Bytes Prozess-ID + 4 Bytes für Zähler) für ID. Problem ist, wenn eine numerische ID generiert wird und ich dann versuche, mit dieser ID im Admin-Bereich von Rails zu suchen. Das Rails-Admin-Panel fragt nicht nach Suchfeldtypen, sondern nur nach Suchwerten und durchsucht die gesamte Sammlung. –

+0

Ich sehe ... Rails Admin Panel versucht dann, Ihre ID auf ein langes Feld irgendwie zu werfen. Sie haben hier zwei Möglichkeiten: entweder verkürzen Sie Ihr Suchfeld, um kürzer zu werden, und Sie führen eine Abfrage mit LIKE durch oder fragen das Rails Admin Panel, wenn dieses Kompatibilitätsproblem bekannt ist (es scheint auch auf der github-Seite Probleme zu geben) – born4new

Verwandte Themen