用核心数据属性填充数组

Filling an array with core data attributes

我正在尝试填充数组。

var weights = [] 

具有来自 NSManaged 对象的属性。我的核心数据关系就像遵循 Client<-->>Assessment。我在评估中有一个 'weight' 属性,我想用这些字符串值填充我的数组。我的变量:

var client: Client! = nil 

成功检索到我选择的特定客户,但我不知道如何用名为 'weight' 的特定客户评估属性的值填充我的数组。我只得到了...

client.assessment.count

它成功地向我显示了客户的评估数量,但是我如何访问我的数组的每个评估的权重属性?

我的客户端和评估管理对象类如下:

Client.swift

import Foundation
import CoreData

@objc(Client)
class Client: NSManagedObject {
    @NSManaged var assessment: NSSet
}

Assessment.swift

import Foundation
import CoreData

@objc(Assessment)
class Assessment: NSManagedObject {
    @NSManaged var weight: String
    @NSManaged var client: Client
}

谁能帮我知道怎么做?

更新: 我在@Wain 的回答中得到的错误截图。

您可以使用 KVC 获取集合中的权重:

var weights: NSSet! = client.assessment.valueForKey("weight")

然后您可以通过排序或仅请求所有对象从中提取一个数组。