여러 속성이있는 코어 데이터 엔티티가 있는데 하나의 속성에 모든 객체의 목록이 필요합니다.엔티티에서 선택된 속성을 가져 오는 중
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext!
let sortDesc = NSSortDescriptor(key: "username", ascending: true)
let fetchReq = NSFetchRequest(entityName: "Identities")
fetchReq.sortDescriptors = [sortDesc]
fetchReq.valueForKey("username")
let en = NSEntityDescription.entityForName("Identities", inManagedObjectContext: context)
userList = context.executeFetchRequest(fetchReq, error: nil) as [Usernames]
을하지만이 나에게 NSException 오류를 제공하고, 왜 알아낼 수 없습니다, 또는 나는이 작업을 수행하는데있어 방법 : 내 코드는 다음과 같습니다. 내가 NSFetchRequest 클래스 설명을 읽었지만 그것에서 많은 의미를 만들 수 없습니다.
의견을 보내 주시면 감사하겠습니다.
편집 : Bluehound에서 팁 후 나는이 내 코드를 변경 :
는var userList = [Model]()
@IBAction func printUsers(sender: AnyObject) {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext!
let sortDesc = NSSortDescriptor(key: "friendID", ascending: true)
let fetchReq = NSFetchRequest(entityName: "Identities")
fetchReq.sortDescriptors = [sortDesc]
fetchReq.propertiesToFetch = ["friendID"]
let en = NSEntityDescription.entityForName("Identities", inManagedObjectContext: context)
userList = context.executeFetchRequest(fetchReq, error: nil) as [Model]
println(userList)
}
는 런타임 오류가 사라지고하지만 내가 변환하는 방법을 잘 모르겠어요 때문에 작동하는지 나는 아직도 모른다 문자열 목록에 나열하십시오.
항상 그렇듯이 제안을 환영합니다.
'valueForKey' 대신'NSFetchRequest'의'propertiesToFetch' 속성을 사용하십시오. – Ian
@Bluehound NSPropertyDescription을 초기화하는 데 어려움이 있습니다. – martin
println (userList)의 출력은 어떻게 생깁니 까? – pbasdf