django-sphinx

une couche pour moteur de recherche en texte intégral à l'aide de Sphinx et Django
Télécharger maintenant

django-sphinx Classement & Résumé

Publicité

  • Rating:
  • Licence:
  • BSD License
  • Prix:
  • FREE
  • Nom de l'éditeur:
  • David Cramer
  • Site Internet de l'éditeur:
  • http://code.google.com/u/dcramer/

django-sphinx Mots clés


django-sphinx La description

Une couche pour moteur de recherche en texte intégral utilisant Sphinx et Django Django-Sphinx est une couche qui fonctionne beaucoup comme le Django ORM, sauf qu'il fonctionne sur le moteur de recherche en texte intégral SPHINX.Veuillez noter que vous devez créer vos propres index Sphinx et installer Sphinx sur votre serveur pour utiliser cette application pour utiliser cette application pour utiliser cette application. . Il n'y aura plus de libération des packages disponibles. Veuillez utiliser SVN pour commander la dernière version du coffre, car il doit toujours être stable et actuel.Install: pour installer la dernière version stable: sudo easy_install Djangosphinexto Installez la dernière version de développement (mise à jour assez souvent): SVN Checkout http: // Django- sphinx.googlecode.com/svn/trunk/ django-sphinxcd django-sphinxsudo python setup.py InstallNote: Vous devrez installer le package SPHINXAPI.PY dans votre chemin Python ou utiliser l'une des versions incluses. Pour utiliser la version fournie, vous devez spécifier ce qui suit dans votre fichier Paramètres.py: # sphinx 0.9.9sphinx_api_version = 0x116 # Sphinx 0.9.8sphinx_api_version 0.9.7sphinx_api_version 0.9.7sphinx_api_version = 0x107Usage: Ce qui suit est un exemple d'utilisation: Classe MyModel ( Modèles.Model): Search = SphinxSearch () # Facultatif: par défaut à db_table # Si votre nom d'index ne correspond pas à myModel._meta.db_table # Remarque: Vous ne pouvez générer que des configurations automatiques à partir de la ./Manage.py Script # si votre index noms de noms. Recherche = sphinxsearch ('index_name') # ou peut-être que nous voulons être plus ... Spécifique SearchDelta = SphinxSearch (Index = 'Nomel Delta_Name', poids = {'Nom': 100, 'Description': 10, 'Tags': 80 ,}) QUERYSET = MyModel.Search.Query ('Query') Résultats1 = QuerySet.order_by ('@ weight', '@ID', "my_attribute ') résultats2 = QuerySet.filter (my_attribute = 5) résultats3 = requérant.filter (my_other_attribute = ) RESULES4 = QUERYSET.EXCELLUDE (MY_ATTRIBUTE = 5) RESULTS5 = QUERYSET.COUNT () # AS de 2.0 Vous pouvez maintenant accéder à un attribut pour obtenir le poids et les arguments similaires Résultats des résultats1: Résultat d'impression, Résultat._sphinx # Vous pouvez également accéder à un ensemble similaire de métadonnées sur le querySet lui-même (une fois qu'il a été tranché ou exécuté de quelque manière que ce soit) des résultats d'impression1._sphinxsome de méthodes supplémentaires: * Compte () * extra ( ) (transmis au QuerySet) * Tout () (ne rien) * Select_Related () (transmis au QuerySet) * Groupe_by (champ, champ, champ) * SET_OPTIONS (index = ', poids = {}, poids = ) La couche Django-Sphinx prend également en charge ainsi moi de base interrogé sur plusieurs index. Pour utiliser ceci, vous devez d'abord comprendre les règles d'une union. Vos index doivent contenir exactement les mêmes champs. Ces champs doivent également inclure une sélection content_type qui devrait être l'ID de contenu_type associé à cette table (modèle) .vous pouvez faire quelque chose comme ceci: SPHINXSearch ('Index1 Index2 Index3'). Requête ('Hello') Cela retournera une liste de tous les matchs, commandés par poids, de tous les index. Cela effectue une requête SQL par index avec des allumettes, comme l'orèse de Django ne prend pas en charge SQL Union. Exigences: · Django · Python


django-sphinx Logiciels associés