2016-01-23 4 views
0

У меня есть NSManagedObject с Я- многих отношениях похож на это:Удалить отношения и объект из контекста в NSManagedObject Deinit

class Foo: NSManagedObject { 

    let context = (UIApplication.sharedApplication().delegate as! AppDelegate).model.context 

    @NSManaged var something: NSSet 

    // Some setup etc. 
} 

Когда я удалить этот объект из контекста, я хотел бы удалить something а также и пытался делать это, используя deinit в классе Foo:

deinit { 
    print(something.count) // prints 0 

    something.forEach { context.deleteObject($0) } 
} 

при удалении экземпляра Foo, deinit будет называться, но как-то отношение с something потеряно до того, как deinit называется. Есть ли способ удалить something, используя deinit вместо удаления его отдельно и вручную?

ответ

0

Это то, для чего используется правило удаления каскада в отношении. Установите его в виде модели в Xcode.

+0

Я искал Google и так много пробовал так долго, и решение было простым ... Большое спасибо. –