hi Ich habe eine Core Data Datenbank mit numerischen Attributen. Sie sind NSNumbers. Der Standardwert ist 0.0, aber wenn ich versuche, ein paar NSPredicated fetch zu machen, bekomme ich "'NSInvalidArgumentException', Grund: 'Ungültiges Prädikat: nil RHS'" nur weil der Attributwert 0.0 ist
Das Prädikat wird erstellt mit:
%Vor%Wie kann ich dieses Problem lösen?
Sie fügen die Floats als Objekte hinzu, nicht als Floats? Versuchen Sie Folgendes:
%Vor%Ich glaube fest daran, dass eine Ihrer Variablen null ist oder eine Autorelease wurde ...
versuche das:
%Vor%Wenn das erfolgreich ist, liegt das Problem an Ihren Variablen.
Wenn Sie erwarten, dass entweder num1
oder num2
manchmal nil
ist, dann könnten Sie das Prädikat wie folgt schreiben:
Nun, angesichts des von Ihnen bereitgestellten Prädikats lautet die einfache Antwort:
Entweder startNSNumber
, endNSNumber
oder idString
ist null. Wenn Sie etwas mit nil
in NSPredicate
vergleichen möchten, müssen Sie in [NSNull null]
, nicht nil
ersetzen.
IN NSpredicate verwendet den String-Wert als float das Dictionary key.floatValue und kann einfach verwendet werden.
%Vor%Ich mache diesen Beitrag nützlich.
Tags und Links nspredicate iphone nsnumber