django-sphinx

Screenshot Software:
django-sphinx
Szczegóły programowe:
Wersja: 2.2.4
Filmu: 11 May 15
Wywoływacz: David Cramer
Licencja: Wolny
Popularność: 1

Rating: nan/5 (Total Votes: 0)

django-sfinks jest warstwą, która działa podobnie jak Django ORM robi chyba działa na szczycie pełnotekstowego wyszukiwarce Sphinx.
Uwaga: Musisz utworzyć własne indeksy Sfinks Sfinks i zainstalować na serwerze, aby korzystać z tej aplikacji.
Nie będzie już zwolnić pakiety. Proszę używać SVN do kasy najnowszą wersję tułowia, tak jak powinno być zawsze stabilne i aktualne.

Zainstaluj:

Aby zainstalować najnowszą stabilną wersję:
sudo easy_install djangosphinx
Aby zainstalować najnowszą wersję rozwojową (dość często) zaktualizowany:
svn checkout http://django-sphinx.googlecode.com/svn/trunk/ django-sfinks
Sfinks django-cd
sudo python setup.py install
Uwaga: Musisz zainstalować pakiet sphinxapi.py do swojej ścieżki Python lub użyć jednego z dołączonych wersjach. Aby korzystać z wersji zawarte, należy określić następujące w pliku settings.py:
# Sfinks 0.9.9
SPHINX_API_VERSION = 0x116
# Sfinks 0.9.8
SPHINX_API_VERSION = 0x113
# Sfinks 0.9.7
SPHINX_API_VERSION = 0x107

Sposób użycia:

Poniżej znajduje się kilka przykładów użycia:
Klasa MyModel (models.Model):
& Nbsp; search = SphinxSearch () # Opcjonalnie: domyślnie db_table
& Nbsp; # Jeśli nazwa indeksu nie pasuje MyModel._meta.db_table
& Nbsp; # Uwaga: Można wygenerować tylko automatyczne konfiguracje z ./manage.py skrypcie
& Nbsp; # jeśli nazwa indeksu pasuje.
& Nbsp; search = SphinxSearch ("index_name")
& Nbsp; # A może chcemy być więcej .. specyficzne
& Nbsp; searchdelta = SphinxSearch (
& Nbsp; index = "index_name delta_name",
& Nbsp; ciężary = {
& Nbsp; "Nazwa": 100,
& Nbsp; "opis": 10,
& Nbsp; "tagi": 80,
& Nbsp;}
& Nbsp;)
queryset = MyModel.search.query ("kwerenda")
Wyniki 1 = queryset.order_by ('@ waga ","id "," my_attribute ")
results2 = queryset.filter (my_attribute = 5)
results3 = queryset.filter (my_other_attribute = [5, 3,4])
results4 = queryset.exclude (my_attribute 5 =) [0:10]
results5 = queryset.count ()
# Od 2,0 można uzyskać dostęp do atrybutu, aby uzyskać wagi i podobne argumenty
w rezultacie w Wyniki1:
& Nbsp; wydruk, result._sphinx
# Można również uzyskać dostęp podobny zestaw metadanych na samej QuerySet (kiedyś to było realizowane w plastrach lub w jakikolwiek sposób)
drukuj results1._sphinx
Niektóre dodatkowe metody:
& Nbsp; * count ()
& Nbsp; * extra () (przekazywane do QuerySet)
& Nbsp; * wszystko () (nie robi nic)
& Nbsp; * select_related () (przekazywane do QuerySet)
& Nbsp; * group_by (pola, pola, pola)
& Nbsp; * set_options (indeks = '', ciężary = {}, waży = [])
Warstwa django-sfinks obsługuje również kilka podstawowych zapytań w ciągu wielu indeksów. Aby skorzystać z tej opcji należy najpierw zrozumieć zasady unii. Twoje wskaźniki musi zawierać dokładnie te same pola. Te pola muszą zawierać również wybór content_type który powinien być związany z id content_type tej tabeli (modelu).
Następnie można zrobić coś takiego:
SphinxSearch ("index1 index2 index3"). Query ('hello')
To zwróci listę wszystkich meczów, uporządkowaną wagowo od wszystkich indeksów. Ten wykonuje jedno zapytanie SQL za indeksu z meczów w nim, jako ORM Django nie obsługuje SQL UNION

Wymagania .

  • Django
  • Python

Inne programy z deweloperem David Cramer

Sentry
Sentry

10 Dec 15

django-data-tools
django-data-tools

11 May 15

nose-json
nose-json

14 Apr 15

nexus-memcache
nexus-memcache

15 Apr 15

Komentarze do django-sphinx

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!