我在 Swift 中有这个模型
import SwiftUI
import FirebaseFirestoreSwift
import FirebaseFirestore
struct Tweet: Codable, Identifiable, Hashable {
var id: UUID = UUID()
var content: String
var ownerId: String
var owner: UserProfile
var likes: Int
@ServerTimestamp var createdAt: Timestamp?
}
它存储在 Firestore 集合“推文”中:
tweets: {
[
"ds4a65d4a65sd46das65d4": {
"content" : "safsafds",
"createdAt" : "...",
"id" : "sdfsdfsd",
"likes" : 0,
"ownerId" : "123",
"owner" : {
"bio": "aaasdasdassa",
"username": "asdasd",
"profileImage": "aaa",
"userId": "123",
},
}, ...
]
}
当我获取所有推文时,我会正常获取信息以及所有者数据。但所有者数据可能是旧的。假设用户更改了他的个人资料图片或用户名...等,因此推文所有者数据可能不是最新的。
因此,假设我们要从推文模型中删除 owner 字段,并保留 ownerId。
如何使用以下模型获取包含所有者数据的所有推文?
struct Tweet: Codable, Identifiable, Hashable {
var id: UUID = UUID()
var content: String
var ownerId: String
// var owner: UserProfile <-- THIS IS REMOVED
var likes: Int
@ServerTimestamp var createdAt: Timestamp?
}