【发布时间】:2020-04-25 09:58:41
【问题描述】:
试图在 SwiftUI 中实现核心数据,我碰壁了。 根据许多教程,我编写了以下项目,大概完全按照说明进行,但应用程序无法构建。
我被困在一个非常早期的阶段,所以我希望有人可以在这里提供帮助。
- 我在 XCDtatamodel 中创建了 2 个实体,每个实体都有一个名为“airportName”的字符串属性
- 我只是尝试显示其中一个实体的列表:
import SwiftUI
import CoreData
struct ContentView: View {
@Environment(\.managedObjectContext) var managedObjectContext
@FetchRequest(entity: Takeoffs.entity(), sortDescriptors: [NSSortDescriptor(keyPath: \Takeoffs.eventDate, ascending: false)]) var fetchedTakeoffs: FetchedResults<Takeoffs>
var body: some View {
List {
ForEach (fetchedTakeoffs, id: \.self) { item in
Text(item.airportName) // THIS IS WHERE I GET THE ERROR
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
return ContentView().environment(\.managedObjectContext, context)
}
}
但是 Xcode 告诉我“'NSManagedObject' 类型的值没有成员 'airportName'” 这就像我的 XCDatamodel 没有连接到应用程序。
我通过选中 SwiftUI,使用 CoreData 复选框来创建项目。
完整的代码可以在这里找到:
https://github.com/Esowes/RecentExp
感谢您的任何指点。
【问题讨论】: