| django-sphinx. Eine Schicht für Volltextsuchmaschine mit Sphinx und Django |
Jetzt downloaden |
django-sphinx. Ranking & Zusammenfassung
- Name des Herausgebers:
- David Cramer
- Website des Verlags:
- http://code.google.com/u/dcramer/
django-sphinx. Stichworte
django-sphinx. Beschreibung
Eine Schicht für Volltextsuchmaschine mit Sphinx und Django DJANGO-SPHINX ist eine Schicht, die ähnlich wie das Django Orm funktioniert, außer dass er oben auf der SPHINX-Volltextsuchmaschine arbeitet. Bitte notieren Sie sich: Sie müssen Ihre eigenen Sphinx-Indizes erstellen und Sphinx auf Ihrem Server installieren, um diese App zu verwenden . Da werden keine Freigabepakete mehr verfügbar sein. Bitte verwenden Sie SVN, um die neueste Kofferraumversion zu kennzeichnen, da es immer stabil und aktuell sein sollte sphinx.googlecode.com/svn/trunk/django-sphinxcd django-sphinxsudo python setup.py installEnnote: Sie müssen das sphinxapi.py-Paket in Ihren Python-Pfad installieren oder eine der mitgelieferten Versionen verwenden. Um die mitgelieferte Version zu verwenden, müssen Sie in Ihrer Einstellungen. Models NAME-Treffer Suchen = sphinxsearch ('index_name') # oder vielleicht wollen wir mehr sein .. spezifische searchdelta = sphinxsearch (Index = 'Index_name delta_name', gewichts = {'Name': 100, 'Beschreibung': 10, 'Tags': 80 }) Queryset = mymodel.search.query ('Query') Ergebnisse1 = queryset.order_by ('@ gewicht', '@id', 'my_attribute') Ergebnisse2 = queryset.Filter (my_attribute = 5) Ergebnisse3 = QuerySet.Filter (MY_OTHER_ATTRIBUTE = ) Ergebnisse4 = queryset.exclude (MY_ATTRIBUTE = 5) Ergebnisse5 = queryset.count () # Ab 2.0 können Sie jetzt auf ein Attribut zugreifen, um das Gewicht und ähnliche Argumente zu erhalten Ergebnis in den Ergebnissen1: Drucken von Ergebnis, Ergebnis._SPHINX ) (an das QuerySet übergeben) * Alle () () (tut nichts) * Select_Related () (an das Queryset übergeben) * Group_by (Feld, Feld, Feld) * Set_Options (Index = '', Gewichte = {}, Gewese = ) Die Django-Sphinx-Schicht unterstützt so auch Ich bin grundlegende Abfragen über mehrere Indizes. Um dies zu verwenden, müssen Sie zunächst die Regeln einer Union verstehen. Ihre Indizes müssen genau die gleichen Felder enthalten. Diese Felder müssen auch eine Content_Type-Auswahl enthalten, die die Content_Type-ID sein sollte, die dieser Tabelle (Modell) zugeordnet ist. Sie können dann so etwas tun: SPHINXSearch ('Index1 Index2 Index3'). Abfragen ('hello') Dies gibt eine Liste zurück von allen mit dem Gewicht bestellten Übereinstimmungen, von allen Indizes. Dies führt eine SQL-Abfrage pro Index mit Übereinstimmungen darin aus, da Django's Orm SQL Union nicht unterstützt. Anforderungen: · Django · Python
django-sphinx. Zugehörige Software