Uff, disculpe el título largo.Guardar una única entidad CoreData (no todo el contexto) Mientras se mantiene la funcionalidad NSFetchedResultController
Tengo un solo contexto de objeto administrado donde estoy almacenando canciones derivadas de dos ubicaciones diferentes. Obtengo algunas de las canciones del almacenamiento persistente en el teléfono (usando Core Data) y selecciono algunas de las canciones de una base de datos en línea. Ambas canciones son de la misma subclase MananagedObject. Me gustaría que ambas canciones estuvieran en un único contexto porque me gustaría que aparecieran en una vista de tabla conectada con NSFetchedResultsController.
El problema ocurre cuando me gustaría guardar una de las canciones. No quiero guardar todas las canciones que saqué de la base de datos en línea para el teléfono. Solo quiero guardar la canción individual, así que un simple [guardar en moc] no funciona. El otro problema es que después de guardar la canción individual, todavía quiero que las canciones extraídas en línea estén en el contexto (pero, una vez más, no guardadas). Creo que tengo un par de opciones diferentes:
1) ¿Es posible tener un controlador NSFetchedResults conectado a múltiples contextos?
2) Podría mover todas las canciones extraídas de la base de datos en línea a un contexto temporal separado, guardarlas en el contexto original y luego volver a mover todas las canciones. (ver: How do I copy or move an NSManagedObject from one context to another?)
3) Recuerde todos los pares clave-valor para las canciones en línea, elimine las canciones en línea del contexto, guarde el contexto original, inserte todas las canciones en línea nuevamente en el contexto original basado en de los pares clave-valor guardados.
4) Soy un gran n00b y me falta algo más fácil.
Gracias!
¿Qué es lo que realmente quiere guardar? La ubicación de la canción o los datos de la canción real (archivo)? – sosborn