У меня есть два объекта в моей модели данных: Student < - >> GradeКак создать Core Data отношения в Swift
В Objective-C можно использовать следующую строку, чтобы связать отношения двух моих объектов :
[newStudent setValue:[NSSet setWithObject:newGrade] forKey:@"grades"];
Однако в Swift отсутствует NSSet. Как я могу выполнить одно и то же?
newStudent.setValue(??????, forKey: "grades")
Я оговорился, когда сказал «нет NSSet». Я имел в виду, что в Свифте не было родного набора. Однако, как отметил gregheo, теперь я вижу, что Swift 1.2 добавил новый тип «Set». Я бы хотел, чтобы решение использовало этот родной набор. –
Вы использовали собственный Swift 'Set' как свойство '@NSManaged' успешно? Я не могу найти кого-либо, подтверждающего, что он работает правильно в Интернете. – AnthonyM
В итоге я использовал подклассы, такие как Мартин Р. Когда Xcode автоматически генерируется подклассы, он определил такие атрибуты, как: '@NSManaged вар gradesRelationship: NSSet' Тогда в моем коде, я использовал Swift устанавливает что-то вроде этого: ' вар thisGradeSet: Set? var thisGrade: GradeElement? ! thisGradeSet = thisStudent .gradesRelationship.filteredSetUsingPredicate (cellPredicate) вар thisScore: Int = thisGrade .score, как Int thisScore = 95 thisGrade .score = thisScore' –