110 votes

Quelle est la meilleure application de recherche pour Django ?

Je suis en train de construire un projet Django qui a besoin d'une fonctionnalité de recherche, et jusqu'à ce qu'il y ait une django.contrib.search je dois choisir une application de recherche. Alors, quelle est la meilleure ? Par "meilleure", je veux dire...

  • facile à installer / à mettre en place
  • a une API adaptée à Django ou au moins à Python.
  • peut effectuer des recherches raisonnablement complexes

Voici quelques applications dont j'ai entendu parler. N'hésitez pas à en suggérer d'autres si vous en connaissez :

J'aimerais également éviter d'utiliser un moteur de recherche tiers (comme Google SiteSearch), car certaines des données que j'aimerais indexer sont réservées aux membres du site et ne doivent pas être publiques.

102voto

kpw Points 1035

Vérifiez Recherche dans la meule de foin - une nouvelle couche d'abstraction de recherche basée sur un modèle qui supporte actuellement Xapian , Solr y Whoosh . Il semble qu'il soit bien supporté et documenté.

19voto

Garth Kidd Points 2792

Justin, j'essaierais djangosearch d'abord : Jacob Kaplan-Moss (le principal développeur de Django) y travaille.

Risques potentiels :

  • La page d'accueil prévient que l'API pourrait ne pas être entièrement stable.

Avantages potentiels :

  • "L'objectif à long terme est que cela devienne django.contrib.search ."

18voto

davidhund Points 161

Je suis à la recherche de la même chose, comme beaucoup d'autres personnes. Espérons que django.contrib.search sera ajouté prochainement.

En attendant, voici ce que j'ai trouvé :

Pour moi, la plupart d'entre eux semblent assez compliqués et, franchement, un peu intimidants à mettre en œuvre. J'aimerais savoir ce que vous en pensez.

8voto

Joe W. Points 849

Je recommande Sphinx pour la recherche plein texte et l'agrégation, et django-sphinx est suffisamment bon pour une utilisation en production. Nous avons trouvé que Sphinx était le moyen le moins gourmand en ressources et le plus rapide d'indexer et de rechercher nos documents, et que django-sphinx était une enveloppe agréable au-dessus du client sphinx.

L'agrégation par groupe est particulièrement intéressante, si par exemple vous voulez afficher le nombre de documents avec une certaine étiquette ou par un certain auteur (ou les deux) correspondant à une recherche. Les mises à jour des attributs en mémoire sont également pratiques, notamment pour supprimer immédiatement les articles supprimés.

8voto

Joe Germuska Points 853

La page de code google pour djangosearch indique qu'il n'est plus en développement actif, et suggère meule de foin o solango .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X