Page de Recherche/Recherche avancée #120
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
Le champ de recherche de la v5 n'a pour l'instant pas d'utilité. Il est là pour faire joli.
Ce serait cool de pouvoir rechercher parmi le forum, les programmes et peut-être les utilisateurs. Pour ça il faut décider de comment on gère les typo dans la recherche, si on utilise les fonctionnalités de recherche de postgres ou d'un autre moteur de recherche, ou si on fait notre propre tambouille.
Qu'est-ce qu'on fait pour la recherche ?
Ma proposition
Une page de recherche
/rechercher/{query}
Une seule page pour la recherche « normale » et « avancée ». Avec les options de recherche avancée dans une « case » sur le côté des résultats.
Dans les options avancées on peu avoir :
Il faudra sans doute cacher les sous-options dans un spoiler pour garder tout ça lisible.
Seuls les options choisis par défaut sont actives dans la recherche « normale ».
Les recherches dans les utilisateurs concernent uniquement le pseudo, description et signature des utilisateurs, pas leurs posts, programmes ou autre contenu.
La recherche dans le forum d'administration est activé par défaut pour les membres de l'équipe du site. La même chose est faite pour le forum de CC.
Au niveau de la typographie on devrai idéalement pouvoir oublier un accent/se tromper d'accent, oublier un
s
a la fin d'un mot au milieu d'une phrase. Et quand même avoir le résultat attendu, j'imagine que les erreurs dans le genre sont faciles a faire et on devrai pouvoir les gérer.Ça rend le code un poil plus compliqué mais ça me semble bien mieux que ce qu'on a actuellement avec la v4.
Pour le niveau technique je sais que c'est possible d'utiliser la recherche « plain text » de postgreSQL pour ça, j'ai un pote de promo qui a bossé avec pendant un an. Les performances devraient être ok, mais il faudrait tester sur le VPS comment il tient (Ça pourrai lui demander un peu de travail de construire un index pour la recherche.)
Petite liste des fonctionnalités
C'est quelque chose de compliqué et qu'on n'a pas envie de coder nous-même. PostgreSQL a déjà les outils pour ça (y compris plus d'opérateurs que je ne peux imaginer utiles) donc je pense que ce serait bien de s'y limiter.
Je suis d'accord pour l'implémentation, mais qu'est-ce qu'on veut offrir comme possibilité a l'utilisateur ?
D'ailleurs j'ai l'idée que mon URL est pas complète, j'ai oublié une méthode pour passer les options.
Pardon j'étais un peu trop préoccupé par la question de l'implémentation quand j'ai vu l'issue, et j'ai oublié de détailler.
Je pense que tu ce que tu décris est un très bon début. J'imagine que quelques options en plus pourraient aider : par exemple "rechercher dans les messages de Ninestars" ou "rechercher dans le topic de gint", ou encore "rechercher les messages de Totoyo dans le topic des suggestions" sont des versions qui me seraient bien utiles de temps en temps. Souvent je sais qui a dit ce que je cherche mais je ne connais pas le mot exact et donc c'est plus facile de restreindre de cette façon.
Ensuite je pense que Postgres nous laissera filtrer dans les tables donc par exemple "chercher dans les posts récents" serait ensuite une option. Mais ça on pourra certainement l'ajouter une fois qu'on aura une base !
Je pense qu'il faut aussi des options de tris.
Pour la recherche dans les posts récents j'imagine juste faire un tris par date en partant de la date la plus récente (je sais jamais si c'est croissant ou décroissant).