Firebase实时数据库:如何在push()之后获取唯一密钥。set()?
在我的flatter代码中,下面是我将数据保存到Firebase实时数据库的步骤Firebase实时数据库:如何在push()之后获取唯一密钥。set()?,firebase,flutter,firebase-realtime-database,Firebase,Flutter,Firebase Realtime Database,在我的flatter代码中,下面是我将数据保存到Firebase实时数据库的步骤 final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room'); void _sendMessage({String messageText, String imageUrl}) async{ await reference.push().set({ 'text': mes
final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room');
void _sendMessage({String messageText, String imageUrl}) async{
await reference.push().set({
'text': messageText,
'imageUrl': imageUrl,
});
}
这将在数据库中生成以下结果
我需要在提交数据后立即检索生成的唯一密钥,但我如何才能做到这一点?该方法返回一个,因此您可以按如下操作:
final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room');
void _sendMessage({String messageText, String imageUrl}) async {
DatabaseReference newRef = reference.push();
String newKey = newRef.key;
await newRef.set({
'text': messageText,
'imageUrl': imageUrl,
});
}
请注意,在调用push方法时,您会立即获得新的DatabaseReference:无需等待对asynchronous set方法的调用完成。该方法返回一个,因此您可以执行以下操作:
final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room');
void _sendMessage({String messageText, String imageUrl}) async {
DatabaseReference newRef = reference.push();
String newKey = newRef.key;
await newRef.set({
'text': messageText,
'imageUrl': imageUrl,
});
}
请注意,在调用push方法时,您会立即获得新的DatabaseReference:无需等待对异步set方法的调用完成。您可以使用不同的方法获得该id。首先,您可以获取下一个id,并将项目推入其中。它将如下所示:
final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room');
void _sendMessage({String messageText, String imageUrl}) async{
String newkey = reference.push().key; // That is your unique key!
await reference.child(newkey).set({
'text': messageText,
'imageUrl': imageUrl,
});
}
您可以使用不同的方法获取该id。首先,您可以获取下一个id,并将项目推入其中。它将如下所示:
final DatabaseReference reference = FirebaseDatabase.instance.reference().child('chat_room');
void _sendMessage({String messageText, String imageUrl}) async{
String newkey = reference.push().key; // That is your unique key!
await reference.child(newkey).set({
'text': messageText,
'imageUrl': imageUrl,
});
}
太神了非常感谢。你能帮我一把吗太神了非常感谢。请帮我一把好吗-