флаттер вставляет идентификатор из Firebase - PullRequest
1 голос
/ 08 апреля 2019

Я делаю приложение во флаттере (электронная торговля), когда корзина не создана или не открыта. Я должен создать заказ и получить идентификатор для добавления товаров, но не могу получить идентификатор созданного заказа

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);

Мне нужно создать заказ и получить идентификатор для добавления соответствующей детали.

1 Ответ

1 голос
/ 08 апреля 2019

Вы можете получить идентификатор заказа, повесив на DatabaseReference, который создается, когда вы все push():

var orderRef =_database.reference().child("orders").push()
orderRef.set(order.toJson());
log(orderRef.key);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...