django-sphinx

Screenshot der Software:
django-sphinx
Softwarebeschreibung:
Version: 2.2.4
Upload-Datum: 11 May 15
Entwickler: David Cramer
Lizenz: Frei
Popularität: 1

Rating: nan/5 (Total Votes: 0)

django-Sphinx ist eine Schicht, die Funktionen ähnlich wie die Django ORM tut, außer es funktioniert auf dem Sphinx Volltext-Suchmaschine.
Bitte beachten Sie: Sie müssen Ihren eigenen sphinx Indizes zu erstellen und zu installieren sphinx auf Ihrem Server, um diese App nutzen.
Es wird nicht mehr loslassen Pakete zur Verfügung stehen. Bitte verwenden Sie SVN, um die neueste Version Stamm Kasse, wie es sollte immer stabil und aktuell sein.

Zu installieren:

So installieren Sie die neueste stabile Version:
sudo easy_install djangosphinx
So installieren Sie die neueste Entwicklungsversion (ziemlich häufig aktualisiert):
svn checkout http://django-sphinx.googlecode.com/svn/trunk/ django-sphinx
cd django-sphinx
sudo python setup.py install
Hinweis: Sie müssen das sphinxapi.py Paket in Ihren Python-Pfad installieren oder verwenden Sie eine der Versionen enthalten. Um die mitgelieferte Version verwenden, müssen Sie folgende Angaben in Ihrer settings.py Datei:
# Sphinx 0.9.9
SPHINX_API_VERSION = 0x116
# Sphinx 0.9.8
SPHINX_API_VERSION = 0x113
# Sphinx 0.9.7
SPHINX_API_VERSION = 0x107

Verbrauch:

Hier finden Sie einige Beispiel Nutzung:
Klasse MyModel (models.Model):
& Nbsp; search = SphinxSearch () # optional: standardmäßig auf db_table
& Nbsp; # Wenn Ihr Indexnamen nicht übereinstimmen MyModel._meta.db_table
& Nbsp; # Hinweis: Sie können nur die automatische Konfiguration von der ./manage.py Skript zu generieren
& Nbsp; #, wenn Ihr Indexnamen übereinstimmt.
& Nbsp; search = SphinxSearch ('indexname')
& Nbsp; # Oder vielleicht zu sein .. spezifischen wollen wir
& Nbsp; searchdelta = SphinxSearch (
& Nbsp; index = "index_name delta_name ',
& Nbsp; Gewichte = {
& Nbsp; "Name": 100,
& Nbsp; 'description': 10,
& Nbsp; "Tags": 80,
& Nbsp;}
& Nbsp;)
queryset = MyModel.search.query ('query')
Ergebnisse1 = queryset.order_by (@ Gewicht ","id "," Beispielattribut ')
WERT 2 = queryset.filter (Beispielattribut = 5)
Ergebnisse3 = queryset.filter (my_other_attribute = [5, 3,4])
results4 = queryset.exclude (Beispielattribut = 5) [0.10]
results5 = queryset.count ()
# Ab 2.0 können Sie nun Zugriff auf ein Attribut, die Gewicht und ähnlichen Argumenten erhalten
für Ergebnis in Ergebnisse1:
& Nbsp; Druckergebnis, result._sphinx
# Sie können auch auf eine ähnliche Reihe von Metadaten auf der queryset selbst (sobald es geschnitten worden oder in irgendeiner Weise ausgeführt)
Druck results1._sphinx
Einige zusätzliche Methoden:
& Nbsp; * count ()
& Nbsp; * extra () (auf die queryset weitergegeben)
& Nbsp; * alle () (nichts)
& Nbsp; * select_related () (auf die queryset weitergegeben)
& Nbsp; * group_by (Feld, Feld, Feld)
& Nbsp; * set_options (Index = '', Gewichte = {}, Gewichte = [])
Die django-sphinx Schicht unterstützt auch einige grundlegende Abfragen über mehrere Indizes. Um dies zu nutzen, müssen Sie zuerst die Regeln einer UNION verstehen. Ihre Indizes müssen genau die gleichen Felder enthalten. Diese Felder müssen auch eine content_type Auswahl, die der content_type ID mit der Tabelle (Modell) in Verbindung gebracht werden sollte.
Anschließend können Sie etwas tun, wie folgt aus:
SphinxSearch ('index1 index2 Index3'). Abfrage ("Hallo")
Dadurch wird eine Liste aller Treffer nach Gewicht bestellt aus allen Indizes zurück. Dies führt eine SQL-Abfrage per Index mit Streichhölzern in sie, als Djangos ORM unterstützt keine SQL UNION

Anforderungen .

  • Django
  • Python

Andere Software von Entwickler David Cramer

sentry-webhooks
sentry-webhooks

20 Feb 15

Django-PayPal
Django-PayPal

20 Jul 15

nose-bleed
nose-bleed

14 Apr 15

nydus-django
nydus-django

14 Apr 15

Kommentare zu django-sphinx

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!