2017-01-15 9 views
5

Uzyskuję dostęp do mojej bazy danych firebase z mojej aplikacji dla systemu Android. Muszę wdrożyć funkcje like, takie jak Facebook. Tak więc, gdy użytkownik naciśnie przycisk, jeśli post jest już lubiany, staje się nielubiany i na odwrót. W tym celu najpierw sprawdzam, czy pole boolowskie liked jest prawdziwe w bazie ogniowej, a jeśli tak, to zaktualizuj je do wartości false i na odwrót. Moje obecne podejście obejmuje czytanie pola liked, a następnie zapisanie go (wykonanie 2 wywołań DB).Przełączanie wartości logicznej w bazie danych Firebase Realtime

Czy w tym celu oferuje Firebase rozwiązanie natywne?

Przełączanie wartość logiczną w Firebase Database

+0

Odpowiedziałem na to pytanie jednym ze sposobów, jakie mogłem wymyślić. Ale chcę cię zapytać, dlaczego nie posłuchałeś lub nie lubiłeś węzła, aby określić jego wartość. Następnie na podstawie tej wartości decydujesz, czy nowa wartość to prawda czy fałsz. Ta wartość poprzedniego słuchacza również zostanie zmieniona, więc zadziała niezależnie od czasu kliknięcia przycisku – koceeng

Odpowiedz

0

ten sposób jest nieco brzydki i niezbyt dobre faktycznie, ale to działa i najszybszym sposobem (chyba).

Zamiast boolean, wprowadź parametr integer. Za każdym razem, gdy kliknięto przycisk podobny, dodaj do niego wartość +1, a za każdym razem, gdy czytasz te dane, wystarczy potwierdzić, czy są one nieparzyste czy nieparzyste. Dziwne jest dla, nawet dla nie lubić, lub na odwrót.

Powiązane problemy