MagicalRecords importiert Daten aus JSON / NSDictionary. Beziehungen importieren

Ich habe Fragen zu Beziehungen. Ich muss NSManagedObject Klassen Team und Player. Team kann viele Spieler enthalten. Der Spieler kann nur eine Mannschaft enthalten.

Hier ist der JSON aus den beiden Anfragen:

/Mannschaft

    {
        "id" : 1,
        "name" : "Chicago Bulls",
        "city" : "Chicago"
    },
    {
        "id" : 2,
        "name" : "Detroit Pistons",
        "city" : "Detroit"
    },
...

/ Spieler

{
    "id" : 1,
    "name" : "D.J. Augustin",
    "teamId" : 1
},
{
    "id" : 2,
    "name" : "Carlos Boozer",
    "teamId" : 1
},
...

Richten Sie xcdatamodeld-Entitäten ein

Team Entity

atribute | mappedKeyName |
name     | name          |
teamID   | id            |
city     | city          |


Player Entity

atribute | mappedKeyName |
name     | name          |
playerID | id            |

Wie Sie sehen, habe ich dort keine Team-ID für die Player-Entität festgelegt, da der Schlüssel relatedByAttribute verwendet werden muss. Erstes Problem hier Ich weiß nicht, für welche Eigenschaft, welches Attribut oder welche Beziehung ich den relatedByAttribute-Schlüssel in den Benutzerinformationen festlegen muss.

CODE TEIL SCHREIBEN

Angenommen, ich habe Team-JSON bereits von NSDictionary vertreten lassen. Was ich mache:

Dieser Code Blow importiert alle Daten aus NSDictionary mitBenutzerinformation für jedes Attribut für die Team-Entität. Auf diesem Schritt läuft alles gut.

Team *team = [Team MR_createEntity];
[team MR_importValuesForKeysWithObject:dictionary];

In der zweiten Operation werden alle Spieler abgerufen und dem konkreten Team zugeordnet, das bereits im ersten Schritt mit der in JSON angezeigten Schlüsselteam-ID erstellt wurde.

Was mache ich auf diesem Schritt. Angenommen, ich habe NSDictionary mit dem ersten Spieler.

Der Code ist der gleiche.

Player *player = [Player MR_createEntity];
[player MR_importValuesForKeysWithObject:dictionary];

Aber die Beziehungen werden nicht funktionieren, und MagicalRecords wird meinen Spieler nicht mit dem konkreten Team verbinden, da ich den relatedByAttribute-Schlüssel nicht wie gesagt festgelegt habe. Ich muss wirklich dabei helfen, weil ich die Grundidee des Imports verstehe, aber nicht verstehe, wo ich relatedByAttribute-Schlüssel festlegen muss, den ich für welche Entität und für welches Attribut meine.

Ich habe hier auch einige doppelte Probleme mit Entities beim Stapelüberlauf gesehen. Ich denke, es ist eine andere Frage, aber wenn Sie etwas vorschlagen können, ist es gut, weil ich von vorne anfange und meinen Code für das Verständnis einfach und ohne zusätzliche Probleme machen kann . Vielen Dank!

Den Link benutze ich:magischer Import

Antworten auf die Frage(2)

Ihre Antwort auf die Frage