2014-10-04 95 views
0

以下行似乎總是有一個語法錯誤,關於如何解決它的任何想法?另一個Swift編譯器錯誤?

sourceModel = NSManagedObjectModel.mergedModelFromBundles(nil, forStoreMetadata:metaData) 

錯誤是 「Extra argument forStoreMetadata in call

的,如果我嘗試以下

sourceModel = NSManagedObjectModel.mergedModelFromBundles(forStoreMetadata:元數據)

我得到一個"Missing argument for parameter #1 in call"

是什麼給了?

回答

1

mergedModelFromBundles定義bundles是不是你不能通過零,而不是optional.So你需要傳遞arraybundles

//bundles is not optional 
class func mergedModelFromBundles(bundles: [AnyObject], forStoreMetadata metadata: [NSObject : AnyObject]) -> NSManagedObjectModel? 

嘗試,而不是

 sourceModel = NSManagedObjectModel.mergedModelFromBundles([NSBundle.mainBundle()], forStoreMetadata: metaData)