relation rapide de récupération de données de base
Je suis un peu confus essayer de récupérer l'égard des données à partir de coredata dans swift
Personne Entité
contient le nom de la personne et l'Id Unique. La relation avec les Livres est l'UNE de Beaucoup de
Par exemple
Person Entity:
idPerson = 25 - namePerson = John
idPerson = 26 - namePerson = Steve
Livres Entité contient le titre des livres, Id Unique pour le livre et une relation d'identité avec personne (personBook). La relation avec la Personne en question est UN
Par exemple
Books Entity:
idBook = 2543 - titleBook = title one - personBook = 25
idBook = 2544 - titleBook = title two - personBook = 25
idBook = 2545 - titleBook = title three - personBook = 26
voici mon modèle de données de capture d'écran: (pas d'image parce que je n'ai pas de réputation)
Personne de la classe
@objc(Person)
class Person: NSManagedObject {
@NSManaged var idPerson: String
@NSManaged var namePerson: String
@NSManaged var booksRel: NSSet
}
Livres de classe
@objc(Books)
class Books: NSManagedObject {
@NSManaged var bookTitle: String
@NSManaged var idBook: String
@NSManaged var personBook: String
@NSManaged var personRel: Person
}
Extraire le code
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext!
let request = NSFetchRequest(entityName: "Books")
request.returnsObjectsAsFaults = false
request.fetchLimit = 30
////////////////////////////
//CODE TO JOIN Person entity WHERE personBook = idPerson
////////////////////////////
var results:NSArray = context.executeFetchRequest(request, error: nil)!
for temp in results {
var data = temp as Books
///////////////////////////////////////
//println(data.namePerson) ----> not working
///////////////////////////////////////
}
est possible de récupérer pour chaque livre connexes namePerson basé sur namePerson = personBook ?
Merci beaucoup!
source d'informationauteur Stefano Vet
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin d'une propriété
personBook
pour votreBooks
entité.Nous allons créer un
Person
managedObject:Lorsque vous créez un
Books
managedObject, vous pouvez la lier àperson
comme ceci:Maintenant, lorsque vous voulez procéder à une extraction sur
Books
vous pouvez le faire comme ceci:Si j'ai bien compris votre question /structure de données correctement, vous aurez envie de faire quelque chose comme: