2010-03-04 9 views
6

Estoy tratando de recuperar datos de una entidad en los datos principales donde conozco el valor de una entidad relacionada.Obtención de la entidad de datos básicos de una entidad principal

IE:
Entity1
-attrib1.1
-attrib1.2
-relationship1

Entity2
-attrib2.1
-relationship1

Entity1 tiene un a-muchos relación con Entity2 en relación1.

Estoy tratando de obtener el valor de Entity2 donde Entity1.attrib1.1 = XXX.

Intenté usar NSPredicate, pero no estoy seguro de cómo, si es posible, escribir la sintaxis en el método predicateWithFormat.

Si esto no tiene sentido, lo siento. Intentaré aclarar si es necesario.

He buscado en Google y aquí, pero no he encontrado nada. Tal vez mis ojos se están rindiendo? ;)

Respuesta

4

I que usted está tratando de encontrar ejemplos de Entity2 donde Entity1.attrib1.1==XXX y Entity1.relationship1 contiene una referencia a la instancia Entity2. Según su descripción, no está claro si Entity2.relationship1 es el inverso de Entity1.relationship1. De lo contrario, debería crear la relación inversa y establecerla como tal en el modelador de datos. A menos que realmente sepa lo que está haciendo y está seguro de que no necesita la relación inversa, Core Data no funcionará como esperaba a menos que exista una relación inversa.

Una vez que tenga la relación inverso a partir Entity2 a Entity1 (vamos a llamarlo inverseRelationship por poner un ejemplo), puede realizar una solicitud de búsqueda en Entity2 usando una instancia NSPredicate con la cadena de formato

inverseRelationship.attrib1.1 == XXX 

si el inversa es una relación de uno a uno o

ANY inverseRelationship.attrib1.1 == XXX 

si el inverso también es una relación de muchos.

+0

¡Eres el HOMBRE! Sí, tengo establecidas relaciones inversas. En realidad solo estaba probando exactamente lo que escribiste con un giro. Lo intentaba: Entity.reverseRelationship.attrib1.1 == XXX ¡Luego lo intenté sin Entity y funcionó! ¡Luego vine y vi tu publicación! ¡¡Gracias de nuevo!! – RoLYroLLs

+0

Lo siento, soy un usuario nuevo, así que todavía no puedo haberte votado. Solo obtuve 11 rep. ¡Gracias de nuevo! – RoLYroLLs

+0

Me alegra que lo hayas descubierto tú también. ¡Buena suerte! –

Cuestiones relacionadas