2016-11-03 131 views
0

我正在嘗試構建一個應用程序供僱主與員工聊天。用於聊天的Firebase數據結構

所以我有僱主,僱員和消息。

我做到了與$firebaseArray和孩子的:

recipient > sender > messages 

我要添加發送數據,如個人資料圖片和最後的消息,我不如何做到這一點。

- employer_1 
    - employee_1 
     - SKLDJLKDksdklJS 
       - content: "Hello" 
       - timestamp: 129081021 

這是正確的做法還是有更好的方法?謝謝。

+0

你有僱主和僱員的信息,如個人資料圖片,細節在同一棵樹或在不同的位置? – ughai

+0

它是在不同的SQL數據庫,所以我想知道我可以把鏈接 –

回答

2

您可能遇到顯示最新消息或更新消息的問題,因爲在employee_1 - > employee_1上獲取所有消息。

另一個可選的可能是有一個結構是這樣的:

{ 
"users":{ 
    "employer_1":{ 
    "profile-image":"<url>", 
    "last-message":"SKLDJLKDksdklJS", 
    ... 
    }, 
    "employee_1"{ 
     "profile-image":"<url>", 
     "user-chat-list":{ 
      "employer_1":{ 
       "last-message":"SKLDJLKDksdklJS", 
       "message-list":{ 
        "SKLDJLKDksdklJS" : 129081021, 
        "ASDCJLKDksdklJS" : 129081021 
       } 
      } 
     } 
    } 
}, 
"messages":{ 
    "SKLDJLKDksdklJS":{ 
     "content": "Hello", 
     "sender":"employer_1", 
     "timestamp": 129081021 
     } 
} 
} 

你不會需要獲取所有的聊天列表內容的消息。

+0

這種方式使用$ firebaseObject而不是$ firebaseArray?只是確保。我是新手,謝謝 –

+0

你在使用什麼客戶端庫?你可以通過使用'var db = firebase.database();'然後使用'db.ref()。update(更新)'來更新你的Firebase數據庫的任何部分 – ughai

+0

我使用的是angularfire,https:// github.com/firebase/angularfire –