Swift NSManagedObject为空

时间:2015-01-12 15:06:23

标签: swift nsmanagedobject

伙计我有一个很大的问题,虽然我确实发现了一些问题,但解决方案有点陈旧,它涉及到Objective-C代码,这对我来说并不是很有帮助,因为我需要一个Swift解决方案。

我面临的问题是,如果我尝试创建一个NSManagedObject并设置一个属性,当试图打印它(或保存它)时它只是空白。获取函数仅显示数组中的空值([,,,,,])
保存代码如下:

let appDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let managedObjectContext = appDelegate.managedObjectContext!

var error: NSError?
let entity = NSEntityDescription.entityForName("Currency", inManagedObjectContext: managedObjectContext)

var currency = NSManagedObject(entity: entity!, insertIntoManagedObjectContext:managedObjectContext) as Currency
currency.symbol = "EUR"
println(" currency is \(currency)")`

获取的是:

if !managedObjectContext.save(&error) {
        println("Could not save \(error), \(error?.description)")
}
else {
    println("saved")
    println("\(currency)")

    let fetchRequest = NSFetchRequest(entityName:"Currency")
    let fetchedResults = managedObjectContext.executeFetchRequest(fetchRequest, error: &error) as [Currency]

    println("\(fetchedResults)")

}

我真的很感激任何帮助,因为这开始让我疯狂。非常感谢!

1 个答案:

答案 0 :(得分:0)

如果这可能对其他人有帮助,实际问题在于println。
事实证明,你不能使用println作为NSManagedObject,你必须使用NSLog ...
所以数组不是空的,它只是println的一个错误,不知道如何输出数据!