Firebase Search-Nested object searching in Firebase AndroidIs there a way to run Python on Android?How do save an Android Activity state using save instance state?Close/hide the Android Soft KeyboardWhy is the Android emulator so slow? How can we speed up the Android emulator?Is there a unique Android device ID?What is 'Context' on Android?Proper use cases for Android UserManager.isUserAGoat()?Get children using orderByChild-equalsTo in Firebase-AndroidAdding Social Media Share Logic From Firebase in AndroidHow to get the data saved in a USER_ID?
If human space travel is limited by the G force vulnerability, is there a way to counter G forces?
Why is Minecraft giving an OpenGL error?
Is it unprofessional to ask if a job posting on GlassDoor is real?
A newer friend of my brother's gave him a load of baseball cards that are supposedly extremely valuable. Is this a scam?
Approximately how much travel time was saved by the opening of the Suez Canal in 1869?
I'm flying to France today and my passport expires in less than 2 months
Arrow those variables!
Alternative to sending password over mail?
What are the disadvantages of having a left skewed distribution?
RSA: Danger of using p to create q
How much of data wrangling is a data scientist's job?
What's that red-plus icon near a text?
Unable to deploy metadata from Partner Developer scratch org because of extra fields
Theorems that impeded progress
Roll the carpet
Codimension of non-flat locus
Can a vampire attack twice with their claws using Multiattack?
How to move a thin line with the black arrow in Illustrator?
Does an object always see its latest internal state irrespective of thread?
What defenses are there against being summoned by the Gate spell?
Is it possible to do 50 km distance without any previous training?
How does one intimidate enemies without having the capacity for violence?
Cross compiling for RPi - error while loading shared libraries
Can a monk's single staff be considered dual wielded, as per the Dual Wielder feat?
Firebase Search-Nested object searching in Firebase Android
Is there a way to run Python on Android?How do save an Android Activity state using save instance state?Close/hide the Android Soft KeyboardWhy is the Android emulator so slow? How can we speed up the Android emulator?Is there a unique Android device ID?What is 'Context' on Android?Proper use cases for Android UserManager.isUserAGoat()?Get children using orderByChild-equalsTo in Firebase-AndroidAdding Social Media Share Logic From Firebase in AndroidHow to get the data saved in a USER_ID?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I want to search by string value of the child "title" from all the "category" child:
database snapshot
I've add database rules like this:
database rules snapshot
I tried with this code:
public void getData(String search_key)
dbref.child("data").orderByChild("title").startAt(search_key).endAt(search_key + "uf8ff").addListenerForSingleValueEvent(new ValueEventListener()
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
String title = null;
for (DataSnapshot data:dataSnapshot.getChildren())
for (DataSnapshot dataCategory:data.getChildren())
try
Object object = dataCategory.child(DBConstants.CHILD_TITLE).getValue();
if (object != null) title = object.toString();
catch (NullPointerException e)
//comments
System.out.println(title);
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
);
java android firebase firebase-realtime-database
add a comment |
I want to search by string value of the child "title" from all the "category" child:
database snapshot
I've add database rules like this:
database rules snapshot
I tried with this code:
public void getData(String search_key)
dbref.child("data").orderByChild("title").startAt(search_key).endAt(search_key + "uf8ff").addListenerForSingleValueEvent(new ValueEventListener()
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
String title = null;
for (DataSnapshot data:dataSnapshot.getChildren())
for (DataSnapshot dataCategory:data.getChildren())
try
Object object = dataCategory.child(DBConstants.CHILD_TITLE).getValue();
if (object != null) title = object.toString();
catch (NullPointerException e)
//comments
System.out.println(title);
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
);
java android firebase firebase-realtime-database
add a comment |
I want to search by string value of the child "title" from all the "category" child:
database snapshot
I've add database rules like this:
database rules snapshot
I tried with this code:
public void getData(String search_key)
dbref.child("data").orderByChild("title").startAt(search_key).endAt(search_key + "uf8ff").addListenerForSingleValueEvent(new ValueEventListener()
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
String title = null;
for (DataSnapshot data:dataSnapshot.getChildren())
for (DataSnapshot dataCategory:data.getChildren())
try
Object object = dataCategory.child(DBConstants.CHILD_TITLE).getValue();
if (object != null) title = object.toString();
catch (NullPointerException e)
//comments
System.out.println(title);
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
);
java android firebase firebase-realtime-database
I want to search by string value of the child "title" from all the "category" child:
database snapshot
I've add database rules like this:
database rules snapshot
I tried with this code:
public void getData(String search_key)
dbref.child("data").orderByChild("title").startAt(search_key).endAt(search_key + "uf8ff").addListenerForSingleValueEvent(new ValueEventListener()
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
String title = null;
for (DataSnapshot data:dataSnapshot.getChildren())
for (DataSnapshot dataCategory:data.getChildren())
try
Object object = dataCategory.child(DBConstants.CHILD_TITLE).getValue();
if (object != null) title = object.toString();
catch (NullPointerException e)
//comments
System.out.println(title);
@Override
public void onCancelled(@NonNull DatabaseError databaseError)
);
java android firebase firebase-realtime-database
java android firebase firebase-realtime-database
edited Mar 22 at 9:39
Alex Mamo
47.1k82965
47.1k82965
asked Mar 21 at 22:48
Nasimul HaqueNasimul Haque
32
32
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
There is no way you can achieve this using your database structure since between your data
node and the objects that contain the title
property there is one more child, the Category
.
You can use the following query:
dbref.child("data").child("Category1")
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
And loop only once, not twice as you do in your code right now but you'll be able to get only the titles that exist within the Category1
node. If you want to get all titles you should restructure your database by ading the category as a property of your objects and then simply use:
dbref.child("data") //No Category1 child
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
In this way you'll a have level less and this query will work perfectly fine.
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55290381%2ffirebase-search-nested-object-searching-in-firebase-android%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
There is no way you can achieve this using your database structure since between your data
node and the objects that contain the title
property there is one more child, the Category
.
You can use the following query:
dbref.child("data").child("Category1")
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
And loop only once, not twice as you do in your code right now but you'll be able to get only the titles that exist within the Category1
node. If you want to get all titles you should restructure your database by ading the category as a property of your objects and then simply use:
dbref.child("data") //No Category1 child
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
In this way you'll a have level less and this query will work perfectly fine.
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
add a comment |
There is no way you can achieve this using your database structure since between your data
node and the objects that contain the title
property there is one more child, the Category
.
You can use the following query:
dbref.child("data").child("Category1")
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
And loop only once, not twice as you do in your code right now but you'll be able to get only the titles that exist within the Category1
node. If you want to get all titles you should restructure your database by ading the category as a property of your objects and then simply use:
dbref.child("data") //No Category1 child
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
In this way you'll a have level less and this query will work perfectly fine.
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
add a comment |
There is no way you can achieve this using your database structure since between your data
node and the objects that contain the title
property there is one more child, the Category
.
You can use the following query:
dbref.child("data").child("Category1")
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
And loop only once, not twice as you do in your code right now but you'll be able to get only the titles that exist within the Category1
node. If you want to get all titles you should restructure your database by ading the category as a property of your objects and then simply use:
dbref.child("data") //No Category1 child
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
In this way you'll a have level less and this query will work perfectly fine.
There is no way you can achieve this using your database structure since between your data
node and the objects that contain the title
property there is one more child, the Category
.
You can use the following query:
dbref.child("data").child("Category1")
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
And loop only once, not twice as you do in your code right now but you'll be able to get only the titles that exist within the Category1
node. If you want to get all titles you should restructure your database by ading the category as a property of your objects and then simply use:
dbref.child("data") //No Category1 child
.orderByChild("title")
.startAt(search_key)
.endAt(search_key + "uf8ff")
.addListenerForSingleValueEvent(/* ... */);
In this way you'll a have level less and this query will work perfectly fine.
edited Mar 24 at 8:37
answered Mar 22 at 9:38
Alex MamoAlex Mamo
47.1k82965
47.1k82965
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
add a comment |
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
Thank you. I've got the idea.
– Nasimul Haque
Mar 22 at 12:12
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
You're welcome, cheers!
– Alex Mamo
Mar 22 at 12:13
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55290381%2ffirebase-search-nested-object-searching-in-firebase-android%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown