gpt4 book ai didi

swift - 如何循环遍历子列表
转载 作者:行者123 更新时间:2023-11-30 10:15:44 25 4
gpt4 key购买 nike

我尝试循环遍历 Realm 数据库中子对象中的列表。 List<Word>在每个 topic有两个元素,但是 topic.words为空(如何访问 topic 中每个 topics 的子列表?

let topics = Realm().objects(Topic)
for topic in topics {
println(topic.description)
//prints Topic {
// name_en = Family;
// words = RLMArray <0x7ff6b4b2a380> (
// [0] Word {
// name_en = Mother;
// },
// [1] Word {
// name_en = Father;
// }
// );
//}

println(topic.words)
//prints
// List<Word> (
//
// )

for word in topic.words {
println(word.name_en)
}

我对 List 做错了什么?为什么列表是空的?

我的模型是:

class Word: Object {
dynamic var name_en = ""
var owners: [Topic] {
return linkingObjects(Topic.self, forProperty: "words")
}
override static func primaryKey() -> String? {
return "name_en"
}
}
class Topic: Object {
dynamic var name_en = ""
let words = List<Word>()
override static func primaryKey() -> String? {
return "name_en"
}
}

例如,此代码为 topic工作正常:

    var topic: Topic? {
didSet {
println(topic!.words)
for word in topic!.words {
println(word.description)
}
}

最佳答案

这是 RealmSwift ( https://github.com/realm/realm-cocoa/issues/1876 ) 中的一个错误,应该由 https://github.com/realm/realm-cocoa/pull/1882 修复.

关于swift - 如何循环遍历子列表<Object>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30117648/

25 4 0