小编glo*_*lob的帖子

SwiftUI FetchRequest 错误:“提取请求必须有实体”

我正在使用 SwiftUI 和 CoreData 以及 SwiftUI 应用程序生命周期(没有场景或应用程序委托)构建一个小型应用程序。当我运行+构建我的应用程序时,出现以下错误:

'executeFetchRequest:error: A fetch request must have an entity.'
Run Code Online (Sandbox Code Playgroud)

我已检查/验证/重新检查以下内容:

  • 我的[app name].xcdatamodeld文件名与我传递到 NSPersistentContainer 中的文件名相同NSPersistentCloudKitContainer(name: [app name])
  • 实体的名称Car正是我传递到 FetchRequest 中的名称
'executeFetchRequest:error: A fetch request must have an entity.'
Run Code Online (Sandbox Code Playgroud)
  • 我为我的实体 Codegen 选择“手动/无”,生成的类是
@FetchRequest(entity: Car.entity(), sortDescriptors: []) var car: FetchedResults<Car>
Run Code Online (Sandbox Code Playgroud)

带有 .Car 扩展名Identifiable

这是我的整个视图结构,根据我的理解,它应该将环境传递给它的所有“子”视图。

public class Car: NSManagedObject {}
Run Code Online (Sandbox Code Playgroud)

和我的@main结构

struct AppView: View {
    
    @Environment(\.managedObjectContext) var moc
    @FetchRequest(entity: Car.entity(), sortDescriptors: []) var car: FetchedResults<Car>
    
    var body: some View {
        List …
Run Code Online (Sandbox Code Playgroud)

core-data swift swiftui

5
推荐指数
1
解决办法
4636
查看次数

标签 统计

core-data ×1

swift ×1

swiftui ×1