如何创建一个扩展来处理多个核心数据实体



我有两个核心数据实体,分别命名为CarOwner,显然都是NSManagedObject,作为所有核心数据实体都默认为@Observable

我创建了一个类,在其中我观察了其中一个实体,类似于:

class RadioControlModel {
@ObservedObject var carEntity:Car
// ... bla bla
init(_ carEntity:Car, _ name:String) {
self.carEntity = readCarEntityWith(name)
}
}

此类是允许用户切换Car实体的布尔值状态的无线电控件的模型。

现在我需要对Owner实体做同样的操作,即使用这个类来更改这个类的布尔值,但initCar绑定。如何将其声明为泛型,以便RadioControlModel可以接受任何核心数据实体,而不仅仅是Car类型的实体。

我在这里的问题是这样做,并继续使用变量@Observable,也就是说,响应更改。

试试这个:

class RadioControlModel<T: NSManagedObject> {
@ObservedObject var carEntity:T
// ... bla bla
init(_ carEntity:T, _ name:String) {
self.carEntity = readCarEntityWith(name)
}
}

最新更新