Os registros mágicos importam dados do JSON / NSDictionary. Relações de importação
Eu tenho perguntas com relacionamentos. Eu tenho que NSManagedObject classes Team e Player. A equipe pode conter muitos jogadores. O jogador pode conter apenas um time.
Aqui está o JSON dos dois pedidos:
/equipe
{
"id" : 1,
"name" : "Chicago Bulls",
"city" : "Chicago"
},
{
"id" : 2,
"name" : "Detroit Pistons",
"city" : "Detroit"
},
...
/jogadoras
{
"id" : 1,
"name" : "D.J. Augustin",
"teamId" : 1
},
{
"id" : 2,
"name" : "Carlos Boozer",
"teamId" : 1
},
...
Configurar entidades xcdatamodeld
Team Entity
atribute | mappedKeyName |
name | name |
teamID | id |
city | city |
Player Entity
atribute | mappedKeyName |
name | name |
playerID | id |
Como você pode ver, não tenho teamId definido para a entidade Player, pois precisamos usar a chave relatedByAttribute. Primeiro problema aqui, não sei para qual propriedade, atributo ou relacionamento preciso definir a chave relatedByAttribute nas Informações do Usuário.
WRITE CODE PARTE
Suponha que eu já tenha a equipe JSON representada pelo NSDictionary. O que eu faço:
Esse código importa todos os dados do NSDictionary usandoinformação de usuário para cada atributo da entidade Equipe. Nesta etapa, tudo está indo bem.
Team *team = [Team MR_createEntity];
[team MR_importValuesForKeysWithObject:dictionary];
A segunda operação é obter todos os jogadores e anexá-los à equipe concreta que já criou na primeira etapa usando o teamId chave que você pode ver no JSON.
O que eu faço nesta etapa. Vamos supor que eu tenha o NSDictionary com o primeiro jogador.
O código é o mesmo para isso.
Player *player = [Player MR_createEntity];
[player MR_importValuesForKeysWithObject:dictionary];
Mas os relacionamentos não funcionarão, e MagicalRecords não conectará meu jogador à equipe concreta, porque eu não defini a chave relatedByAttribute como eu disse. Realmente preciso ajudar com isso, porque entendo a idéia básica de importação, mas não consigo entender onde preciso definir a chave relatedByAttribute, para qual entidade e para qual atributo.
Também vi alguns problemas duplicados com entidades aqui no estouro de pilha, acho que é outra pergunta, mas se você puder sugerir algo, será bom, porque eu começo do zero e posso facilitar meu código para entender e sem problemas adicionais . Muito obrigado!
O link que eu uso:importação mágica