将NSManagedObject子类化的Core Data对象打印到控制台,在Swift中返回空行

opf*_*fer 9 xcode core-data println ios swift

我正在使用Core Data的Swift应用程序.我创建了我的*.xcdatamodeld文件并创建了一个NSManagedObject Subclass(Editor -> Create NSManagedObject Subclass...).

一切正常,除非我尝试println该类的实例化对象(让我们调用它Person),控制台打印空白或简单地Optional()如果没有打开.

我尝试添加DebugPrintablePrintable通过类扩展没有成功.

这是CoreData对象的已知限制吗?我错过了什么?

为清晰起见添加代码:

/// Person.swift (auto-generated by Xcode)
class Person: NSManagedObject {

   @NSManaged var firstname: String
   @NSManaged var lastname: String

}
Run Code Online (Sandbox Code Playgroud)

我的扩展名:

/// Person+Helpers.swift
extension Person : Printable, DebugPrintable {
   override var description : String {
       return "test"
   }

   override var debugDescription : String {
       return "debug test"
   }
}
Run Code Online (Sandbox Code Playgroud)

控制台打印空行,或者在Person对象数组的情况下,它只是打印[ , , , , ]

Sim*_*ain 8

你可以用这个:

NSLog("My managed object: %@", managedObject)
Run Code Online (Sandbox Code Playgroud)

出于某种原因,它不会使用输出,printlnNSLog工作得很好.