Я хочу создать приложение, в котором любой пользователь может добавить объявление (объявление) с тем, что он хочет продать. Это структура базы данных в режиме реального времени в Firebase:Отфильтровать базу данных реального времени Android
- advert
- category
- {uid}
- title
- price
- description
- location
Я хочу, чтобы позволить пользователю фильтровать объявления по категориям, названию и цене.
В настоящее время я могу фильтровать объявления только по названию, как это:
FirebaseDatabase.getInstance().getReference()
.child("adverts")
.orderByChild("title")
.startAt("tv")
.limitToFirst(20)
У меня есть 3 вопроса:
- Как я могу добавить больше "и положения"? Или как я должен структурировать узлы для фильтрации большего количества значений?
- Как я могу сортировать значения, получаемые с сервера в порядке возрастания или убывания в зависимости от uid?
- Кажется, что метод startAt ("abc") не извлекает только те дети, которые содержат в заголовке "tv". Я делаю что-то неправильно? Как я должен получать только те дети, которые содержат строку «tv»?
Спасибо за ваш ответ! И спасибо за видео. Я не знал о видео. 1. Как я могу структурировать данные в моем случае? 2. Firebase уже сортирует данные по uid, но что, если я хочу, чтобы данные сортировались иногда в порядке возрастания, а иногда и в порядке убывания. Как мне это изменить? – Andrew
Я просто смотрел видео, и кажется, что вы НЕ МОЖЕТЕ добавить больше «И КЛАССА», и вы НЕ МОЖЕТЕ получить детей, которые СОДЕРЖАЮТ STRING. Firebase просто разочаровал меня! – Andrew
Да, он предоставляет только простые способы запросов и сортировки данных. Если вы хотите сделать больше, вы сами по себе. Я надеюсь, что Google однажды это улучшит. –