Импорт магической записи (следующий шаг)
Я сделал следующий шаг в названии, поскольку это не та же проблема, что и в моем предыдущем вопросе с почти таким же заголовком.
у меня естьPerson
организация.
Person
--------
name - mappedKeyName: FullName
email - mappedKeyName: EmailAddress
personID - mappedKeyName: Id
--------
photos
ИPhoto
организация.
Photo
--------
image
createDate - mappedKeyName: Date
photoID - mappedKeyName: Id
--------
owner (type Person) - mappedKeyName: UserId - relatedByAttribute: personID
Есть и другие объекты, которые относятся кPerson
тоже и JSON для них получается так ...
{
ObjectId : blah,
Owner : {
Id : 12345asdfg,
FullName : Oliver,
EmailAddress : [email protected]
}
}
С этим JSON моя установка работает с импортом. Любые записи о лицах, которые не существуют (с идентификатором), создаются. И все, что существует, обновляется.
Тем не менее, объект JSON для фотографий выглядит следующим образом ...
{
Id : thisIsThePhotoID,
Date : today,
UserId : 12345asdfg
}
Когда объекты падают таким образом, импорт Волшебной записи прекращается, когда он попадает в импорт человека.
Код падает при ...
- (id) MR_relatedValueForRelationship:(NSRelationshipDescription *)relationshipInfo
{
NSString *lookupKey = [self MR_lookupKeyForRelationship:relationshipInfo];
return lookupKey ? [self valueForKeyPath:lookupKey] : nil; // it stops here.
}
ЗначениеlookupKey
это @ "personID".
Распечатка отношенияInfo в точке останова дает ...
$6 = 0x1fd695e0 (<NSRelationshipDescription: 0x1fd695e0>),
name owner,
isOptional 0,
isTransient 0,
entity Photo,
renamingIdentifier owner,
validation predicates (),
warnings (),
versionHashModifier (null)
userInfo {
mappedKeyName = UserId;
relatedByAttribute = personID;
},
destination entity Person,
inverseRelationship photos,
minCount 1,
maxCount 1,
isOrdered 0,
deleteRule 1
Я действительно понятия не имею, почему это не работает. Я не получаю никаких заметных ошибок, чтобы сообщить.