颤振到实时DB Firebase中的对象映射

颤振到实时DB Firebase中的对象映射,firebase,flutter,firebase-realtime-database,mapping,Firebase,Flutter,Firebase Realtime Database,Mapping,我想在Firebase实时数据库中保存包含对象的列表。问题是,当我将对象保存在那里时,它们没有自动生成的关键点,它们的关键点是0,1,2,…: 我正在以以下方式映射我的投票对象: Map<String, dynamic> toJson() => { 'id': id, 'name': name, 'allowBarChart': allowBarChart, 'allowPieChart': allowPieCh

我想在Firebase实时数据库中保存包含对象的列表。问题是,当我将对象保存在那里时,它们没有自动生成的关键点,它们的关键点是0,1,2,…:

我正在以以下方式映射我的投票对象:

Map<String, dynamic> toJson() => {
        'id': id,
        'name': name,
        'allowBarChart': allowBarChart,
        'allowPieChart': allowPieChart,
        'description': description,
        'custom-questions': customQuestions != null
            ? List<dynamic>.from(customQuestions.map((x) => x.toJson()))
            : [],
        'choice-questions': choiceQuestions != null
            ? List<dynamic>.from(choiceQuestions.map((x) => x.toJson()))
            : [],
      };
Map to json()=>{
“id”:id,
“名称”:名称,
“allowBarChart”:allowBarChart,
“allowPieChart”:allowPieChart,
“描述”:描述,
“自定义问题”:自定义问题!=null
?List.from(customQuestions.map((x)=>x.toJson())
: [],
“选择问题”:choiceQuestions!=null
?List.from(choiceQuestions.map((x)=>x.toJson())
: [],
};
我的问题是:如何做,所以每个值的键不是0,1,2,3,。。。它应该是从firebase自动生成的,例如:1fdDfasLPO3g。我希望你明白我的意思。
提前谢谢

当Firebase SDK遇到
列表时,它被映射到一个JSON数组,该数组以顺序数字索引存储,如您共享的屏幕截图所示。无法更改此映射

如果您想使用Firebase的按键(此时以
-M
开头)存储项目,则应在应用程序代码中生成这些项目(通过调用),并将问题存储在
地图中