2016-03-31 18 views
0

Firebase'de sorguyu sayılarak belirleyebileceğimiz bir yol var mı?Firebase Sorguları say/ötelenerek öğeleri alabilir mi?

Örneğin, düğüm altındaki toplam kayıt sayısı 100 ise ve yalnızca bir sorguda 100 almak istemiyorum. İlk 10 ve sonra 10 ve daha sonra geri dönebilir miyim diyebilirim.

Firebase'in limitToFirst() ve limitToLast() gibi sorgular sağladığını biliyorum, ancak daha sonra yukarıda tanımlanan kullanım durumunu ele almayacaktır.

Lütfen bunun hakkında herhangi bir fikri varsa lütfen bana bildirin.

+0

Bir kullanım örneği paylaşabilir miyim? – Jay

+0

Bkz. Http://stackoverflow.com/questions/28558586/angularjs-fetch-records-for-pagination-from-firebase –

cevap

0

Benzer bir sorunla karşılaştım ve ne yazık ki firebase bunu yapmaya izin vermiyor. Bunu başarabilmenin tek yolu, ihtiyacınız olan tüm verileri almak ve daha sonra istemci tarafında sipariş etmektir.

Örnek:

private void getData() { 
    List<ModelType> data; 
    fireBaseRef = new Firebase(FIREBASE_PATH); 
    Query query = fireBaseRef.child(PATH).orderByChild(CHILD_NAME_PATH); 

    query.addListenerForSingleValueEvent(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      data = new ArrayList<>(); 
      for (DataSnapshot snapshot : dataSnapshot.getChildren()) { 
       ModelType model = snapshot.getValue(ModelType.class); 
       data.add(model); 
       // .. 
      } 
     } 

     @Override 
     public void onCancelled(FirebaseError firebaseError) { 

     } 
    }); 
}