在这篇文章的注释之一:firebaseArray descending order?中,一位Firebase员工建议将时间戳乘以-1,以便按日期降序排序。
这是我正在尝试实现的一个想法,但是,我很难做到这一点,因为kFirebaseServerValueTimestamp是一个NSDictionary,键为".sv“,值为"timeStamp”。
当我试图隔离这个值时,我只能得到一个NSString,上面写着"timeStamp“。
有没有办法在kFirebaseServerValueTimestamp上执行数学运算?
发布于 2016-01-15 20:35:28
kFirebaseServerValueTimestamp是一个属性,它实际上被用作一个占位符,在编写数据时,这个占位符由防火墙填充。
从医生那里:
服务器值-占位符值,您可以写入Firebase数据库作为一个值或优先级,该值或优先级将在写入Firebase数据库之前自动填充。 kFirebaseServerValueTimestamp -自Unix时代以来的毫秒数
因此,例如,如果您希望将时间戳基于Firebase服务器时间,那么
Firebase *timeStampsRef = [self.myRootRef childByAutoId];
[timeStampsRef setValue:kFirebaseServerValueTimestamp];
Firebase *timeStampsRef2 = [self.myRootRef childByAutoId];
[timeStampsRef2 setValue:kFirebaseServerValueTimestamp];将导致以下情况
-K861VyNBisoAL14dHsk: 1452890788194
-K861VyNBisoAL14dHsl: 1452890788195如果要对Firebase数据进行排序,则应将时间戳属性作为要排序的节点的子节点。
pizza_time
node_id_0
timeStamp: 20160109153000
location: "Pizza House"
node_id_1
timeStamp: 20160110153000
location: "Pizza Place"
node_id_2
timeStamp: 20160114153000
location: "Pizza Busters"然后,您可以按日期排序,查询节点从一个日期到另一个日期,或各种其他数据杂技。
https://stackoverflow.com/questions/34816024
复制相似问题