扑从Firebase获取插入的ID

时间:2019-04-08 08:33:35

标签: firebase firebase-realtime-database flutter

在没有创建或打开购物车的情况下,我正在开发一个应用程序(电子商务),我必须创建订单并获取ID以添加产品,但无法获取创建的订单的ID

Future<void> createOrder() async {  
    Order order = new Order('Guatemala', new DateTime.now().toString(), '${widget.userId}-0', 0, widget.userId);
    var orderRs =_database.reference().child("orders").push().set(order.toJson());
 }

_orderList = new List();
_orderQuery = _database
  .reference()
  .child("orders")
  .orderByChild("order_status")
  .equalTo('${widget.userId}-0')
  .limitToLast(1);

_onProductAddedSubscription = _productQuery.onChildAdded.listen(_onEntryAdded);
_onProductChangedSubscription = _productQuery.onChildChanged.listen(_onEntryChanged);
_onOrderAddedSubscription = _orderQuery.onChildAdded.listen(_onOrderAdded);
_onOrderChangedSubscription = _orderQuery.onChildChanged.listen(_onOrderChanged);

我需要能够创建订单并获取ID以添加相应的详细信息

1 个答案:

答案 0 :(得分:0)

您可以通过挂在全部push()上创建的DatabaseReference上来获取订单ID:

var orderRef =_database.reference().child("orders").push()
orderRef.set(order.toJson());
log(orderRef.key);