Можно ли построить запрос, используя список строк, представляющих поле в документе пожарного депо? - PullRequest
0 голосов
/ 03 июля 2019

Я хочу отфильтровать документы на основе списка, который содержит userId. Эти userId являются полями в документах, к которым я хочу получить доступ. этот вопрос похож, но вместо списка ссылок на документы у меня есть список элементов поля. The underlined field is what I would like to access the document by

В настоящее время все, что у меня есть, это отображение всех документов в коллекции:

Query posts = db.collection("posts");


        FirestoreRecyclerOptions<Post> options = new FirestoreRecyclerOptions.Builder<Post>()
                .setQuery(posts, Post.class)
                .build();

        adapter = new FirestoreRecyclerAdapter<Post, PostViewHolder>(options) {
            @Override
            protected void onBindViewHolder(@NonNull PostViewHolder postViewHolder, int position, @NonNull Post post) {
                postViewHolder.setPost(post);
            }

            @NonNull
            @Override
            public PostViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
                View view = LayoutInflater.from(parent.getContext())
                        .inflate(R.layout.card_view_layout, parent, false);
                return new PostViewHolder(view);
            }
        };

        recyclerView.setAdapter(adapter);

Я хочу, чтобы на выходе были все сообщения с полем userId, содержащимся в Списке.

Другими словами, я знаю, что могу запросить все документы с определенным полем, но могу ли я запросить все документы, которые соответствуют списку полей?

1 Ответ

1 голос
/ 03 июля 2019

В настоящее время невозможно сделать один запрос, чтобы вернуть все документы, которые существуют в существующем списке. Это означает, что вы не сможете использовать FirestoreRecyclerAdapter для заполнения вашего RecyclerView, поскольку он способен принимать только один объект Query. Вместо этого вам нужно будет сделать запрос для каждого документа, который вы хотите отобразить, собрать результаты в памяти и использовать другой тип адаптера для заполнения представления.

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