Ich habe Event
Modell mit startDate
und endDate
. Ich möchte dieses Ereignis in 3 Kategorien einteilen.Zeitbasierte transiente Eigenschaft mit NSFetchedResultsController verwenden
- Aktuell: startdate < heute < endDate
- In Kürze: heute < startdate
- Past: endDate < heute
ich eine vorübergehende Eigenschaft namens gemacht status
oben Logik enthalten, und verwenden Sie diese als Parameter in NSFetchedResultsController
NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext, sectionNameKeyPath: "status", cacheName: nil)
Wenn ich laufe, bekam ich diesen Fehler und sagte mir, dass ich Abschnitt als Sortierung verwenden sollte.
Dann habe ich dies im Sortierungsdeskriptor gesetzt und diesen Fehler bekommen, da transient nicht als Sortierungsdeskriptor verwendet werden kann.
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'keypath status not found in entity '
Das Problem ist dieser Abschnitt von 2 Eigenschaften bestimmen ist, so kann es nicht Art sein, indem nur startDate
oder endDate
, aber beide.
Was ist der beste Weg, um dieses Problem zu lösen? Ich habe darüber nachgedacht, diesen Status nicht-transient zu machen, aber dieser Wert wird täglich aktualisiert, ich finde es irgendwie komisch, ihn nicht-flüchtig zu machen.