在swift中过滤CD关系

时间:2015-07-30 11:21:58

标签: swift

如何从具有person.personId!= self.id的成员资格数组中提取人物对象数组?

对于一系列成员资格,每个成员资格都有一个人物对象。我想直接为所有其他人获取所有人物。

如果得到第一个这样的

if let memberships = self.memberships.allObjects as? [Membership],
        let person = memberships.filter({$0.person.personId != userId}).first?.person {

如何使用swifts收集函数在数组中提取和返回每个人?

1 个答案:

答案 0 :(得分:1)

您可以尝试这样的事情:

if let memberships = self.memberships.allObjects as? [Membership] {

    // Filter to remove the membership with userID,
    // and then map to an array of people

    let people = memberships.filter({$0.person.personId != userId}).map { $0.person }
}

在某处,您似乎需要map Membershipperson个数组到{{1}}个对象的数组。希望如果上述内容不完全正确,它将指向正确的方向。