[RAILS] Comment écrire une option de requête lors de l'utilisation de gem ruby-firebase (memorial)

Je suis resté bloqué lors de la liaison de Ruby on Rails et Firebase, et même si je cherchais sur Google, aucune information n'est sortie, donc cela sert également de mémorandum.

Gem ruby-firebase est pratique lors de l'utilisation de Realtime Databa de Firebase, mais il est simple et facile à utiliser, mais il y a peu de documents et il n'y a pas beaucoup de gens qui utilisent ce modèle, donc la méthode d'utilisation n'est pas détaillée. C'était.

Je pense que ce n'est pas grave si vous pouvez voir Git de ruby-firebase pour une utilisation de base. https://github.com/oscardelben/firebase-ruby

En plus de cela, le problème était l'existence de l'option de requête.

À l'origine, il y a peu de requêtes dans Realtime Database et ce n'est pas très pratique à utiliser, il semble donc que Firestore soit meilleur pour ceux qui veulent l'utiliser fermement (je ne l'ai jamais utilisé), mais cette fois j'ai utilisé Realtime Database car il a été spécifié.

Veuillez consulter la documentation officielle pour savoir comment utiliser les requêtes Firebase. https://firebase.google.com/docs/database/rest/retrieve-data#section-rest-ordered-data

Passer orderBy ou equalTo en tant que paramètre comme une URL semble être l'usage habituel. Ce qui m'a surpris dans ce domaine, c'est que la spécification telle que equalTo est toujours utilisée comme un ensemble avec orderBy. Il est naturel de spécifier la clé avec orderBy et la valeur avec equalTo, mais il a fallu du temps pour comprendre -;

Donc, c'est une méthode pour l'utiliser avec ruby-firebase, mais à partir de la conclusion, c'est la méthode d'entrée suivante.

result = firebase.get("example_dir/", {orderBy: '"id"', equalTo: 100}).body

firebase.get () est utilisé normalement et la hiérarchie est spécifiée par example_dir. Le hachage après la virgule est la requête, mais la chose importante ici est de savoir comment spécifier la valeur de orderBy.

Assurez-vous de mettre la valeur entre guillemets doubles, puis placez-la entre guillemets simples. C'est une façon de l'exprimer sur Ruby car il est nécessaire de le mettre entre guillemets doubles lors du passage en paramètre lors de l'utilisation de Firebase.

Si cela n'est pas spécifié, l'erreur suivante sera affichée et le message sera rejeté.

orderBy must be a valid JSON encoded path

Il m'a fallu beaucoup de temps pour le découvrir, alors j'espère que moins de gens souffriront de la même erreur.

Recommended Posts

Comment écrire une option de requête lors de l'utilisation de gem ruby-firebase (memorial)
[Rails] Comment écrire lors de la création d'une sous-requête
Comment faire en sorte que la chaîne de requête émette réellement lors de l'utilisation de PreparedStatement dans JDBC
Comment écrire des rails
Comment écrire docker-compose
Comment écrire Mockito
Comment écrire un fichier de migration
Comment ajouter des caractères à afficher lors de l'utilisation de la méthode link_to
Comment écrire pour appliquer Gem Pagy (pagination) à un tableau
Comment écrire dynamiquement des cas de test itératifs à l'aide de test / unit (Test :: Unit)
Comment tester avec des images lors de l'utilisation d'ActiveStorage et de Faker
Comment définir des variables d'environnement lors de l'utilisation de Payjp avec Rails
Comment écrire du bon code
Comment rédiger un commentaire java
[Refactoring] Comment écrire le routage
Comment écrire et noter lors de la migration de VB vers JAVA
Comment exclure la couverture générée automatiquement de Jacoco lors de l'utilisation de Lombok
Comment écrire Junit 5 organisé
Comment écrire des graines de Rails
Comment écrire le routage Rails
Comment autoriser à l'aide de graphql-ruby
[Java] Comment écrire lors du passage de deux arguments ou plus à super
Comment écrire lors de l'installation d'Amazon Corretto 8 sur CentOS 8 avec Ansible.
Comment résoudre l'erreur inconnue apparue lors de l'utilisation de slf4j en Java
[Rails 5] Comment afficher l'écran de changement de mot de passe lors de l'utilisation de l'appareil
[Rails] Comment utiliser la "devise" des gemmes
Étudier Java # 6 (Comment écrire des blocs)
[Rails] Comment écrire la gestion des exceptions?
Comment écrire une déclaration de variable Java
Comment rédiger un code facile à comprendre [Résumé 3]
Comment créer CloudStack à l'aide de Docker
Comment créer une requête à l'aide de variables dans GraphQL [Utilisation de Ruby on Rails]
[Android] Comment transmettre des images et recevoir des rappels lors du partage à l'aide de ShareCompat
Comment exécuter un contrat avec web3j
Comment trier une liste à l'aide du comparateur
[Rails] Comment télécharger des images à l'aide de Carrierwave
[Basique] Comment écrire un auto-apprentissage Dockerfile ②
[Java] Comment calculer l'âge à l'aide de LocalDate
Résumé de l'écriture des arguments d'annotation
[Introduction à Java] Comment écrire un programme Java
[Java] Comment sortir et écrire des fichiers!
Comment résoudre les erreurs qui se produisent lors de l'installation de Rails 5.1.3
[Swift5] Comment mettre en œuvre une animation à l'aide de "lottie-ios"
Pour implémenter la publication d'images à l'aide de rails
Comment écrire un spécificateur de coupe de point Spring AOP
[SpringBoot] Comment écrire un test de contrôleur
Comment insérer des icônes à l'aide de Font awesome