我正在制作一个聊天机器人,因此我希望在Firebase中实现以下结构。

如果有人想知道什么是多动症,我可以很容易地通过编辑数据库参考到ref('data/disorders/' + disorder + '/' + questionType')获得数据。
不幸的是,我无法得到这样的结构:
问题1:在添加问题和答案之前,我想创建一个不同疾病的列表。
我使用的是push()函数(Database.ref('chatbot/disorders').push(disorder)),但结果不是我想要的结果。

问题2:如何将自动生成的密钥更改为无序名称,如ADHD或抑郁症?
更新:
首先,我想先实现这个结构:
{ "disorders": { "ADHD" "autisme" "depression" "..." } }
当添加问题答案时:
{ "disorders": { "ADHD": { "what": "ADHD is ...", "signs": "The main symptoms of ADHD are ...", "types": "There are three different ..." } "autisme": { "what": "Autism ..." } "..." } }
发布于 2018-04-18 12:06:06
当您需要为您保存的数据使用自动生成键时,可以使用push。
如果您需要保存具有您自己的密钥的数据,则可以避免使用它。例如,在您的例子中,您可以使用使用集
var disorder = {'description': 'Attention deficit...'};
Database.ref('chatbot/disorders/ADHD').set(disorder);或者你可以使用更新
var disorder = {'ADHD':{'description': 'Attention deficit...'}};
Database.ref('chatbot/disorders').update(disorder);关于您的“问题1",我认为您应该检查您的数据库结构。也许像这样的事情可以解决:
{
"disorders": {
"ADHD": {
"description": "Disorder mainly hitting children ...",
"posts": {
"autogenerated-key-via-push": {
...
}...
}
}
}
}https://stackoverflow.com/questions/49899249
复制相似问题