01/10/2018, 15:22
Cách tốt nhất lấy giá trị của node cháu trên Firebase?
Mình có database này
authors:
randomAuthorId1:
authorId:
authorName:
randomAuthorId2:
authorID:
authorName:
books:
randomAuthorId1:
randomBookId1:
bookId:
bookName:
randomBookId2:
bookId:
bookName:
randomAuthorId2:
randomBookId3:
bookId:
bookName:
Mình có giá trị của randomBookId2
mà không có giá trị randomAuthorId1
, đây là code để mình lấy node randomBookId2
:
DatabaseReference bookRef = FirebaseDatabase.getInstance().getReference("books");
bookRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot data : dataSnapshot.getChildren()) {
if (data.hasChild("randomBookId2")) {
Book book = data.child("randomBookId2").getValue(Book.class);
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Cách này thì nó sẽ loop tất cả con của books
và kiểm tra để lấy giá trị node randomBookId2
. Các bạn cho mình hỏi còn có cách nào tốt hơn không?
Thanks all
Đây là bài viết của mình trên StackOverflow mà chưa giải quyết được: LINK
Bài liên quan