ios swift 3 xcode 8 核心数据

标签 ios swift core-data

我正在使用 swift3 学习 ios 开发。我制作了表格,然后转到编辑 -> 创建 NSManagedObject 子类。问题是生成的类有很多错误这里是生成的代码

Store+CoreDataClass.swift
import Foundation
import CoreData

@objc(Store)
public class Store: NSManagedObject {

}

import Foundation
import CoreData


extension Store {

   @nonobjc public class func fetchRequest() -> NSFetchRequest<Store> {
      return NSFetchRequest<Store>(entityName: "Store");
   }

   @NSManaged public var name: String?
   @NSManaged public var toImage: Image?
   @NSManaged public var toItem: NSSet?

}

Store+CoreDataProperties.swift
// MARK: Generated accessors for toItem
extension Store {

    @objc(addToItemObject:)
    @NSManaged public func addToToItem(_ value: Item)

    @objc(removeToItemObject:)
    @NSManaged public func removeFromToItem(_ value: Item)

    @objc(addToItem:)
    @NSManaged public func addToToItem(_ values: NSSet)

    @objc(removeToItem:)
    @NSManaged public func removeFromToItem(_ values: NSSet)

}

这是它给我的错误

@NSManaged only allowed on an instance property or method}

那是为什么呢?我缺少什么?

最佳答案

在 Swift 3 上,你不必创建 NSManagedObject 子类,系统会为你生成它,这样你就可以在没有它的情况下访问它。 但是,如果您确实想要生成它,请转到 xcdatamodel 并确保将数据模型检查器上的代码生成设置为“手动/无”,然后生成它:

I've attached this image for you

关于ios swift 3 xcode 8 核心数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41040776/

相关文章:

ios - objective-c : Send coredata objects by imessage & eMail

ios - 多个核心数据实例

ios - 如何使用 UIImageView 和 UICollectionView 创建布局以及 Collection View 在滚动时更改高度?

ios - SFSafariViewController 关闭后的背景音效

ios - 在 swift 4.0 中查找 realm 的 schemaVersion

ios - 在 Swift 三元运算符中使用 OR 操作数

objective-c - 基于文档的应用程序的核心数据版本控制

ios - 如何使用包含元素的数组创建 NSPredicate

iphone - 尝试以编程方式向 UINavigationController 添加按钮,但它从未显示

swift - 使用 Swift 将位置发布到 iCloud 数据库