代码之家  ›  专栏  ›  技术社区  ›  rgoncalv

时间戳作为“时间戳”保存到Firestore中是否正常?

  •  6
  • rgoncalv  · 技术社区  · 6 年前

    我正在保存服务器值时间戳,如下所示:

    let data : [String: Any] = ["userId": 9,
                                "name": "Elon Musk",
                                "timeCreated": ServerValue.timestamp()]
    
     let doc = firestore.collection("orders").document()
     doc.setData(data){ (error) in
    
     }
    

    当我查看Firestore时,我看到:

    enter image description here

    这正常吗?是否应该有一个long来包含自Unix时代以来的毫秒数?

    2 回复  |  直到 6 年前
        1
  •  11
  •   Doug Stevenson    6 年前

    您使用的是服务器时间戳的实时数据库概念 ServerValue.timestamp . 它本质上是一本字典,包含您显示的值: {'.sv': 'timestamp'} . 这与Firestore不兼容。

    相反,您希望使用Firestore的服务器时间戳概念,即 FieldValue.serverTimestamp() . 另请参见 documentation here .

        2
  •  0
  •   rmickeyd    6 年前

    不,这似乎不正常。这是我使用ServerValue时得到的结果。时间戳()。 enter image description here