django-sphinx

Szoftver screenshot:
django-sphinx
Szoftver adatai:
Változat: 2.2.4
Feltöltés dátuma: 11 May 15
Fejlesztő: David Cramer
Engedély: Ingyenes
Népszerűség: 1

Rating: nan/5 (Total Votes: 0)

Django-szfinx egy réteg, amely funkciók ugyanúgy, mint a Django ORM nem csak működik a tetején a Szfinx teljes szöveges kereső.
Megjegyzés: Meg kell, hogy saját szfinx indexek és telepítse szfinx a szerveren használni ezt a kb.
Ott már nem lesz engedje csomagok. Használja SVN pénztár a legújabb trunk változat, az mindig stabil és aktuális.

Telepítés:

Hogy telepítse a legújabb stabil verzió:
sudo easy_install djangosphinx
Hogy telepítse a legújabb fejlesztői verzió (frissítve elég gyakran):
svn checkout http://django-sphinx.googlecode.com/svn/trunk/ Django-szfinx
cd Django-szfinx
sudo python setup.py telepíteni
Megjegyzés: Meg kell telepíteni a sphinxapi.py csomagot a Python-Path vagy használja az egyik szereplő változatok. Ahhoz, hogy a benne verzió, meg kell adnia a következő a settings.py fájl:
# Sphinx 0.9.9
SPHINX_API_VERSION = 0x116
# Sphinx 0.9.8
SPHINX_API_VERSION = 0x113
# Sphinx 0.9.7
SPHINX_API_VERSION = 0x107

Használat:

A következőkben példát használat:
osztály MyModel (models.Model):
& Nbsp; search = SphinxSearch () # opció: alapbeállításban db_table
& Nbsp; # Ha az index neve nem egyezik MyModel._meta.db_table
& Nbsp; # Megjegyzés: Csak generál automatikus konfiguráció a ./manage.py script
& Nbsp; # ha az index neve megegyezik.
& Nbsp; search = SphinxSearch ("index_name)
& Nbsp; # Vagy talán azt akarjuk, hogy legyen .. specifikus
& Nbsp; searchdelta = SphinxSearch (
& Nbsp; index = 'index_name delta_name ",
& Nbsp; súlyok = {
& Nbsp; 'name': 100,
& Nbsp; "leírás": 10,
& Nbsp; "címkék": 80,
& Nbsp;}
& Nbsp;)
queryset = MyModel.search.query ('query')
results1 = queryset.order_by ('@ súlyát ","id "," my_attribute)
results2 = queryset.filter (my_attribute = 5)
results3 = queryset.filter (my_other_attribute = [5, 3,4])
results4 = queryset.exclude (my_attribute = 5) [00:10]
results5 = queryset.count ()
# Mint 2,0 akkor beléphet egy attribútum a súlya miatt, és hasonló érveket
A eredményeznek results1:
& Nbsp; nyomtatási eredményt, result._sphinx
# Is elérheti hasonló sor meta adatok queryset magát (ha már egyszer szeletelt vagy végre semmilyen módon)
print results1._sphinx
Néhány további módszerek:
& Nbsp; * count ()
& Nbsp; * extra () (át kell engedni a queryset)
& Nbsp; * az összes () (nem csinál semmit)
& Nbsp; * select_related () (át kell engedni a queryset)
& Nbsp; * group_by (mező, mezőn)
& Nbsp; * set_options (index = '', súlyok = {}, súlyok = [])
A Django-szfinx réteget is támogat néhány alapvető lekérdező többszörös indexek. Ahhoz, hogy használni ezt akkor először meg kell érteni a szabályokat a szakszervezettel. Az Ön mutatói kell tartalmaznia pontosan ugyanazon területre. Ezek a területek is tartalmaznia kell content_type kiválasztási ami kell a content_type id társított tábla (modell).
Ezután nem valami ilyesmi:
SphinxSearch ("index1 indexe2 index3"). Query ("hello")
Ez visszaállítja az összes mérkőzést, elrendelte tömeg, minden indexek. Ez végez az egyik SQL lekérdezés per index mérkőzések benne, mint Django ORM nem támogatja az SQL UNION.

követelmények :

  • Django
  • Python

Más szoftver fejlesztő David Cramer

sentry-pivotal
sentry-pivotal

20 Feb 15

nexus
nexus

15 Apr 15

nydus-django
nydus-django

14 Apr 15

Sentry
Sentry

10 Dec 15

Hozzászólások a django-sphinx

Hozzászólás nem található
Megjegyzés hozzáadása
Kapcsolja be a képeket!