![](/img/trans.png)
[英]CoreData creating an NSManagedObject Subclass with a Parent Entity
[英]Difficulty figuring out how to fetch an NSManagedObject subclass entity from CoreData
描述
我承認我主要是在猜測並嘗試將網上找到的東西拼湊起來,以完成此處的工作。 這項工作非常簡單:我正在嘗試從實體“ CrawlerOne”中檢索單個屬性,並將其設置為UILabel。
碼
let key = "CrawlerDistance"
let request = NSFetchRequest<CrawlerOne>(entityName: "CrawlerOne")
request.returnsObjectsAsFaults = false;
let resultPredicate = Predicate(format: "formUUID = %@" , key)
var compound = CompoundPredicate.init(andPredicateWithSubpredicates: [resultPredicate])
var results:NSArray = try context.executeFetchRequest(request, error:nil)
就像我說的那樣,我無疑知道這是錯誤的。 我正在嘗試使用NSPredicate查找名稱為“ CrawlerDistance”的實體。 我在上一條錯誤消息中說“使用未解析的標識符'上下文'。” 我在這里很迷失和掙扎,希望得到一些指導。 我真的很想知道我的思考過程和/或克服這個錯誤需要什么/解決所有問題是否正確。
這是用swift 3編寫的,用於excode beta 8.0
保存
這是我用於保存要檢索的對象的代碼:
let appDel:AppDelegate = (UIApplication.shared().delegate as! AppDelegate)
let context:NSManagedObjectContext = appDel.managedObjectContext
let entity1 = NSEntityDescription.insertNewObject(forEntityName: "CrawlerOne", into:context) as NSManagedObject as! CrawlerOne
entity1.crawlerDistance = distance.text
這是CrawlerOne + CoreDataProperties.swift文件
import Foundation
import CoreData
extension CrawlerOne {
@nonobjc class func fetchRequest() -> NSFetchRequest<CrawlerOne> {
return NSFetchRequest<CrawlerOne>(entityName: "CrawlerOne");
}
@NSManaged var crawlerAbrasion: String?
@NSManaged var crawlerDistance: String?
}
只是給您一個代碼示例以供您參考,而沒有確切解釋所有錯誤的地方,而且顯然我無法對其進行測試,因此某些事情可能仍然有問題...:
let targetValue = "CrawlerDistance"
let request = NSFetchRequest<CrawlerOne>(entityName: "CrawlerOne")
request.predicate = Predicate(format: "crawlerDistance = %@" , targetValue)
let appDel:AppDelegate = (UIApplication.shared().delegate as! AppDelegate)
let context:NSManagedObjectContext = appDel.managedObjectContext
var results:NSArray = try context.executeFetchRequest(request)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.