Как получить идентификатор документа, который имеет поле с указанным значением c? - PullRequest
1 голос
/ 06 января 2020

Я хотел бы получить идентификатор документа, который имеет поле с указанным значением c, например, в этой коллекции, я хотел бы получить идентификатор документа, где "itemName" находится " Eggroll. firestore collection

Ответы [ 2 ]

2 голосов
/ 06 января 2020

Чтобы решить эту проблему, попробуйте следующие строки кода:

FirebaseFirestore rootRef = FirebaseFirestore.getInstance();
CollectionReference deliveryRef = rootRef.collection("delivery");
Query nameQuery = deliveryRef.whereEqualTo("itemName", "eggroll");
nameQuery.get().addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
    @Override
    public void onComplete(@NonNull Task<QuerySnapshot> task) {
        if (task.isSuccessful()) {
            for (QueryDocumentSnapshot document : task.getResult()) {
                Log.d(TAG, document.getId());
            }
        }
    }
});

Выходными данными в вашем logcat будет следующий идентификатор документа:

8jy6 ... fcrm
1 голос
/ 06 января 2020

Вам необходимо выполнить простой запрос, подобный указанному здесь .

Выполнить его. И document.getId (), который даст вам идентификатор документа, соответствующего критериям запроса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...