Recherche
Le composant Recherche permet d'effectuer une recherche dans une source de données ou dans l'intégralité des textes de votre application. Faites apparaître la liste des résultats sous un design sur-mesure grâce au composant Collection / Liste.
Dans cet article
Insérer un champ de saisie
Insérez le composant Recherche. Ce composant n'est pas visuel, il est disponible depuis la liste des Objets.
Insérez un composant Saisie de texte pour créer le champ de saisie.
Sélectionnez ce composant et créez une action pour lancer la recherche :
Validé > Agir sur un composant > Recherche > Rechercher
Dans le champ Terme de recherche, sélectionnez l'objet de la recherche, c'est-à-dire la valeur du champ.
💡 Vous pouvez activer la Validation en direct du composant Saisie de texte ou bien ajouter un bouton pour valider la saisie.
Configurer la recherche
Prenons l'exemple d'une recherche au sein d'un catalogue de biens immobiliers. Si l'utilisateur tape piscine, souhaitez-vous que cette recherche cible les champs Nom, Adresse, Description... de votre base de données ? Souhaitez-vous que s'il tape pisine au lieu de piscine il voit apparaître les résultats de la requête
Désormais il vous faut configurer la requête, préciser la source de données et définir les champs sur lesquels elle va s'effectuer. Vous avez des options pour paramétrer la flexibilité de la correspondance de résultat.
Choisissez la source
Rendez-vous dans la fenêtre Propriétés du composant Recherche.
Cliquez sur Source et choisissez votre source de données : le fournisseur de données, un composant HTTP etc...
Si vous souhaitez rechercher parmi l'intégralité des textes de l'application, sélectionnez le projet et le champ Tous les textes :
Choisir les champs de la recherche
Double-cliquez sur le composant Recherche pour visualiser les résultats de votre requête.
Cliquez sur les champs sur lesquels vont s'effectuer la recherche : ils apparaissent en haut de votre écran.
Autres options
Dans la fenêtre Propriétés, vous pouvez personnaliser les autres paramètres de la recherche.
Tokenisation
Dans un moteur de recherche, la tokénisation est le processus qui consiste à diviser le texte en "tokens", à la fois pendant l'interrogation et l'indexation. Les tokens sont les unités de base pour trouver des correspondances entre les requêtes et les enregistrements. Définissez la flexibilité des correspondances partielles :
- Recherche de mots entiers : indexe les mots entiers (football)
- Recherche partielle (vers l'avant) : indexe progressivement les mots dans le sens avant (football)
- Recherche partielle (vers l'arrière) : indexe progressivement les mots dans le sens arrière (football)
- Rechercher toutes les combinaisons possibles : indexe toutes les combinaisons possibles (football)
Correspondances
Définissez les correspondances phonétiques :
- Non sensible : non sensible à la casse
- Simple : normalisation phonétique
- Avancé : normalisation phonétique et transformations littérales
- Extra : normalisation phonétique et transformations soundex
Voici ces différentes options mises en situation avec la requête "Björn-Philipp Mayer" :
Requête | Non sensible | Simple | Avancé | Extra |
björn | Oui | Oui | Oui | Oui |
bjorn | Non | Oui | Oui | Oui |
philipp | Non | Non | Oui | Oui |
byorn mair | Non | Non | Oui | Oui |
Limiter les résultats
Choisissez le nombre maximal de résultats à s'afficher dans la recherche.
Afficher les résultats
Pour afficher les résultats de la recherche, vous avez deux possibilités :
- Soit vous souhaitez afficher uniquement les résultats de la recherche
- Soit vous souhaitez filtrer la liste de tous les éléments avec la recherche
Option 1 : Afficher uniquement les résultats
Cette option est la plus simple à configurer. Pour afficher uniquement la liste des résultats, il faut créer une nouvelle collection dont la source est le composant Recherche.
Insérez un composant Collection / Liste et dans le champ Source, sélectionnez Depuis un composant :
Pour chaque élément, sélectionnez Source et définissez ce data binding. Pour la fonction By Id, bindez l'Identifiant avec l'ID de l'élément courant.
Option 2 : Filtrer une liste avec la recherche
Cette option implique de créer un filtre sur la liste complète des biens.
Insérez un composant Collection / Liste et dans le champ Source, sélectionnez Depuis un composant : choisissez votre source de données.
Pour chaque élément, sélectionnez Source et définissez ce data binding. Pour la fonction By Id, bindez l'Identifiant avec l'ID de l'élément courant.
Ajoutez un Filtre sur le composant Collection / Liste.