我开始尝试使用swift 3和Xcode 8 beta的Core数据.当我尝试从核心数据模型生成NSManagedObject子类并在编辑器菜单中创建NSManagedObject子类...选项时,Xcode 8 beta生成三个文件,其中一个是_COREDATA_DATAMODELNAME_ + CoreDataModel.swift,其中包含以下内容:
import Foundation
import CoreData
___COREDATA_DATAMODEL_MANAGEDOBJECTCLASSES_IMPLEMENTATIONS___
Run Code Online (Sandbox Code Playgroud)
此外,此文件的内容显示两个警告:
Expressions are not allowed at the top level.
Use of unresolved identifier '___COREDATA_DATAMODEL_MANAGEDOBJECTCLASSES_IMPLEMENTATIONS___'
Run Code Online (Sandbox Code Playgroud)
有没有人面临同样的问题?这个新文件的含义是什么?
谢谢
我创建了2个核心数据实体,然后从编辑器菜单为它们创建了NSManagedObject子类.
但是,当我运行我的应用程序时,由于某种原因,我在所有文件的每一行都会出错.
这是一个例子,这两个实体创建的文件的错误是相同的.
文件代码是自动生成的,所以我可以在这里使用它,但不确定它的用途
import Foundation
import CoreData
extension UserExercise {
@nonobjc public class func fetchRequest() -> NSFetchRequest<UserExercise> {
return NSFetchRequest<UserExercise>(entityName: "UserExercise");
}
@NSManaged public var id: Int16
@NSManaged public var name: String?
@NSManaged public var reps: Int16
@NSManaged public var sets: Int16
@NSManaged public var weight: Int16
@NSManaged public var relationship: NSSet?
}
// MARK: Generated accessors for relationship
extension UserExercise {
@objc(addRelationshipObject:)
@NSManaged public func addToRelationship(_ value: UserRoutine)
@objc(removeRelationshipObject:)
@NSManaged public func removeFromRelationship(_ value: UserRoutine)
@objc(addRelationship:)
@NSManaged public …
Run Code Online (Sandbox Code Playgroud)