用户向管理员发送消息的系统。
如果用户留言,管理员希望看到他们的列表。
在数据库中,
messages {
uid1 {
key1 {
name : "user name"
text : "text that user remained"
created_at : "time that message created"
}
key2 {
…
}
…
}
uid2 {
…
}
}
我存储上述信息。现在能够在管理页面上以列表的形式查看此信息..(并且管理员单击列表以查看消息。)
但是,我已成功加载每个uid,但我不知道如何使用`uid'来获取用户的信息。
这是输出(现在):
<div>uid1</div>
<div>uid2</div>
以下是代码:
function getListItem() {
var messagesRef = database.ref('personalchats') //personalchats 에 있는 uid로 접근
messagesRef.on('child_added', setListItem);
messagesRef.on('child_changed', setListItem);
}
function setListItem(data) {
var key = data.key;
var html = '<div class="listitem"> ' + key + '</div>;
$(".collection").append(html);
}
我希望这个结果是:
<div>userName1 : current message</div>
<div>userName2 : current message</div>
...
我能为此做些什么?
谢谢。
答案 0 :(得分:1)
使用data()转换数据,然后使用数据库中给出的值名称提取数据。
function getListItem() {
var messagesRef = database.ref('personalchats') //personalchats
messagesRef.on('child_added', setListItem);
messagesRef.on('child_changed', setListItem);
}
function setListItem(data) {
var key = data.key;
// create a variable to store the data
var dataVal=data.val();
var msgtext=dataVal.text;
var html = '<div class="listitem"> ' + key + ': '+ msgtext</div>;
$(".collection").append(html);
}