我有一些看起来像这样的Realm类: class Friends: Object { dynamic var name = true dynamic var role = true dynamic var type = true dynamic var owner: Profile?}class Profile: Object { dynamic var uuid = NSUUID().UUIDString dynamic
          class Friends: Object {
    dynamic var name = true
    dynamic var role = true
    dynamic var type = true
    dynamic var owner: Profile?
}
class Profile: Object {
    dynamic var uuid = NSUUID().UUIDString
    dynamic var name = ""
    dynamic var date = NSDate(timeIntervalSinceNow: 1)
    dynamic var section = 0
    dynamic var code = ""
    dynamic var gender = 0
    dynamic var type = ""
    let friends = List<Friends>()
    override static func primaryKey() -> String? {
       return "uuid"
    }
}
class Sub: Profile {
    dynamic var owner: Master?
}
class Master: Object {
    dynamic var type = ""
    dynamic var name = ""
    dynamic var date = ""
    let subs = List<Sub>()
} 
 我明白要从领域中检索对象我必须这样做:
var master = try! Realm().objects(Master) let profile = master[indexPath.row] let date = profile.date let name = profile.name let type = profile.type
问题是:如何从’subs'(List)中检索对象?
检索主对象时,您可以像访问任何其他属性一样访问其子列表:let subs = profile.subs
这为您提供了一个可以迭代的列表:
for sub in profile.subs {
    // do something with the sub object
} 
 或者您可以过滤子类以查找特定对象:
if let subjectWithId = profile.subs.filter("uuid == '7382a8d83'").first {
    // do something with the subject
} 
 或者您可以使用下标按索引访问元素:
let secondProfile = profile.subs[1]
