Definir um valor em uma entidade programaticamente de outra entidade. Questões de dados principais

StackOverflow https://stackoverflow.com/questions/2050925

Pergunta

Sou bastante novo nos dados principais, analisei muitos tutoriais e fóruns e não encontrei a solução elegante para o meu problema:

Eu tenho três entidades no meu modelo: trabalhador, tarefa e subtarefa. Cada um tem um relacionamento muito para muitos com a entidade abaixo e um inverso a um. O trabalhador tem muitas tarefas, cada tarefa possui muitas subtarefas, cada subtarefa tem uma fase de pais e cada tarefa tem um trabalhador. O Subtarask possui um atributo de início que é definido para o horário atual no método NewObject e um botão que desencadeia o método Endsubtask na minha classe SubtakArrayController. O EndsubTask calcula o tempo entre o StartTime e o AGORA e define esse valor para o atributo do subtarek atribui cronometrado. Até agora tudo bem. O problema:

Qual é a melhor maneira de obter o atributo TotalTimeWorked da tarefa selecionado para se atualizar?

Quando eu tento algo como

[currentSubTask setValue:newTotalTime forKey:@"parentTask.totalTimeWorked"];

Eu recebo:

SetValue: ForundefinedKey:]: A subtareta da entidade não é compatível com codificação de valor chave para a chave ParentTask.TotalTimeWorked.

Como faço para acessar os atributos da máscara parental da subtareta atualmente selecionada?

Foi útil?

Solução

Você está usando um caminho -chave. Você deveria usar setValue:forKeyPath: em vez de.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top