【发布时间】:2020-04-02 03:49:07
【问题描述】:
我正在检索一组包含Strings、Dates 和Timestamp 的事件文档。 Strings 没问题,但最近我在我的模型中添加了 Dates 和 Timestamp,它们总是返回为零,我已将其设置为默认值,即使我可以在 Firebase 控制台中清楚地看到它们存储正确。
DocumentSnapshot 检索的初始化设置
init?(snapshot:DocumentSnapshot){
self.eventId = snapshot.get("eventId") as? String ?? "No event Id"
self.byId = snapshot.get("byId") as? String ?? "No uid"
self.adminUser = snapshot.get("adminUser") as? String ?? "No admin user"
//self.eventCreated = snapshot.get("eventCreated") as? Timestamp ?? "No Event Created Date"
self.eventName = snapshot.get("eventName") as? String ?? "No Event Name"
self.eventLocation = snapshot.get("eventLocation") as? String ?? "No Location"
self.eventStart = snapshot.get("eventStart") as? Date ?? nil
self.eventEnd = snapshot.get("eventEnd") as? Date ?? nil
}
DocumentSnapshot 的结果
adminUser: "",
byId: "juYtTP509rhXYPd433",
eventCreated: nil, //Timestamp retrieved as nil
eventId: "gC2RVdUuB9CD66JEYM18",
eventName: "test",
eventLocation: "",
eventStart: nil, //Date retrieved as nil
eventEnd: nil, //Date retrieved as nil
事件模型
struct Event {
var adminUser = ""
var byId = ""
var eventCreated:Timestamp?
var eventId = ""
var eventName = ""
var eventLocation = ""
var eventStart:Date? = nil
var eventEnd:Date? = Date(timeIntervalSince1970: 0)
如果我需要在此处添加该方法以获得更好的上下文,请告诉我?
【问题讨论】:
标签: swift firebase date google-cloud-firestore timestamp