Development #26268
carto : amélioration recherche multi-mots
Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
10 septembre 2018
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Oui
Planning:
Description
Aujourd'hui s'il y a plusieurs mots passés à la recherche ils sont considérés comme un seul (et donc ça doit matcher exactement et dans le bon ordre); j'aimerais pourtant pouvoir taper velo guichard et que ça matche "vélov'v place guichard".
Sans sortir d'artillerie lourde (mais un jour…), je pense que ça améliorerait déjà pas mal de couper en mots et de prendre comme résultats les éléments où tous les mots se retrouvent.
Fichiers
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Fichier 0001-maps-require-all-words-to-match-when-querying-layer-.patch 0001-maps-require-all-words-to-match-when-querying-layer-.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Thomas Noël il y a plus de 5 ans
J'ai l'impression que match() pourrait utiliser issubset(...), genre :
query_words = set(slugify(x) for x in request.GET['q'].split()) def match(feature): words = set(slugify(get_property) for geo_property in (feature['properties'].values() + additional_strings) if isinstance(geo_property, six.string_types)) return query_words.issubset(words)
non ?
Mis à jour par Frédéric Péters il y a plus de 5 ans
Non, on ne fait pas de match précis sur les mots, on fait if word in slugify(geo_property)
, qui attrape un match partiel, "bicycle" là où dans le nom du layer est "bicycles".
Mis à jour par Thomas Noël il y a plus de 5 ans
- Statut changé de Solution proposée à Solution validée
Ah oui, j'avais mal compris. Ack, donc.
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit f872cafd758d08da10f30ff2b1e00f7d189941ae Author: Frédéric Péters <fpeters@entrouvert.com> Date: Fri Sep 14 12:16:33 2018 +0200 maps: require all words to match when querying layer features (#26268)
Mis à jour par Frédéric Péters il y a plus de 5 ans
- Statut changé de Résolu (à déployer) à Solution déployée
maps: require all words to match when querying layer features (#26268)