为什么我必须为FireBase数据结构中的每个对象添加名称?

时间:2017-10-29 13:13:48

标签: json database firebase

让我们来看看简单数组的谷歌示例

 "chats": {
    "one": {
      "title": "Historical Tech Pioneers",
      "lastMessage": "ghopper: Relay malfunction found. Cause: moth.",
      "timestamp": 1459361875666
    },
    "two": { ... },
    "three": { ... }
  },

我的问题是为什么我们必须为每次聊天添加名称?如果我想添加另一个对象,我需要知道哪些是现有的密钥,并创建一个新的原因?我只想要一个本例中的聊天列表,名字一两三对我来说没什么意义......

为什么我不能在聊天记录下放置一个没有名字的对象列表?

1 个答案:

答案 0 :(得分:0)

"chats": {
    "one": {
      "title": "Historical Tech Pioneers",
      "lastMessage": "ghopper: Relay malfunction found. Cause: moth.",
       "timestamp": 1459361875666
},
"two": { ... },
"three": { ... }
},

而不是one, two and three,您可以在android中使用random ids方法使用push(),所以您将拥有以下内容: -

   "chats": {
     "id_1": {
      "title": "Historical Tech Pioneers",
      "lastMessage": "ghopper: Relay malfunction found. Cause: moth.",
      "timestamp": 1459361875666
   },
     "id_2": { ... },
     "id_3": { ... }
     },

您可以像这样检索密钥: -

String mGroupId = mGroupRef.push().getKey();

您可以将ids视为主键