2012-03-28 11 views
0

Dies ist gelöst, aber ich kann es nicht für 2 Tage als solches markieren.RestKit überspringt das Mapping meines Objekts

Dies scheint ziemlich einfach. Ich habe ein Date von meinem Server bekommen, es auf ein NSDate gemappt, es nimmt es auf und geht es zu map und es SKIPS es!

restkit.object_mapping:RKObjectMappingOperation.m:263 Mapping attribute value keyPath 'createdOn' to 'createdOn' 
    restkit.object_mapping:RKObjectMappingOperation.m:125 Found transformable value at keyPath 'createdOn'. Transforming from type '__NSCFString' to 'NSDate' 
    restkit.object_mapping:RKObjectMappingOperation.m:109 Transforming string value '2012-03-20T13:20:19.910Z' to NSDate... 
    restkit.object_mapping:RKObjectMappingOperation.m:280 Skipped mapping of attribute value from keyPath 'createdOn to keyPath 'createdOn' -- value is unchanged ((null)) 

Also später, natürlich, mein Objekt hat eine Null für das NSDate.

Ich habe sogar versucht mit diesem in einem globalen Standardformatierer setzen:

[RKObjectMapping addDefaultDateFormatterForString:@"yyyy-MM-dd'T'HH:mm:ss.sss'Z'" inTimeZone:nil]; 

Ein Problem, das ich sehe, ist, dass mein Datum wie folgt formatiert ist: 2012-03-20T13: 20: 19.910Z - Bekanntmachung die dezimalen Sekunden. Ich hatte gehofft, das obige Format würde das beheben.

Wie kann ich RestKit bekommen, um mein Objekt zuzuordnen?

+0

Ich denke, der Schlüssel hier ist die Zeile "Wert ist unverändert (Null)". Offensichtlich wurde mein Datum nicht richtig formatiert. –

Antwort

1

Die Lösung lautet:

[RKObjectMapping addDefaultDateFormatterForString:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" inTimeZone:nil]; 

Ankündigung die Dezimalsekunden sind SSS nicht sss.

Verwandte Themen