Django-Sphinx

Een laag voor full-text-zoekmachine met SPHINX en DJANGO
Download nu

Django-Sphinx Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • BSD License
  • Prijs:
  • FREE
  • Naam uitgever:
  • David Cramer
  • Uitgever website:
  • http://code.google.com/u/dcramer/

Django-Sphinx Tags


Django-Sphinx Beschrijving

Een laag voor zoekmachine met volledige tekst met SPHINX en DJANGO Django-Sphinx is een laag die veel als de Django ORM werkt, behalve het werkt bovenop de SPHINX Full-Text Search Engine. Let op: u moet uw eigen SPHINX-indexen maken en Sfinx op uw server installeren om deze app te gebruiken . Er zijn niet langer verkrijgbare pakketten beschikbaar. Gebruik SVN om de nieuwste trunkversie te afrekenen, omdat het altijd stabiel en stroom moet zijn. Installeer: Om de nieuwste stabiele versie te installeren: Sudo Easy_Install DjangoSphinXTo Installeer de nieuwste ontwikkelingsversie (Heel vaak bijgewerkt): // Django- Sphinx.goglecode.com/svn/Trunk/ Django-Sphinxcd Django-Sphinxsudo Python Setup.py Installnote: U moet het SPHINXAPI.PY-pakket in uw Python-pad installeren of een van de meegeleverde versies gebruiken. Om de meegeleverde versie te gebruiken, moet u het volgende opgeven in uw instellingen.py-bestand: # SPHINX 0.9.9SPHINX_API_VIERSAGE = 0X116 # SPHINX 0.9.8SPHINX_API_VINERS = 0X113 # SPHINX 0.9.7SPHINX_API_VERSIE = 0x107USAGE: Het volgende is een aantal voorbeeld: Klasse MyModel ( Models.model): Search = SPHINXSearch () # Optioneel: Standaardken naar db_table # Als uw indexnaam niet overeenkomt met mymodel._meta.db_table # Opmerking: u kunt alleen automatische configuraties genereren van de. /manage.py-script # als uw index is Naam overeenkomsten. Search = SPHINXSearch ('Index_Name') # of misschien willen we meer zijn .. Specifieke searchDelta = SPHINXSEARCH (INDEX = 'INDEX_NAME DELTA_NAME', Gewichts = {'Naam': 100, 'Beschrijving': 10, 'Tags': 80 ,}) Queryset = mymodel.search.Query ('query') resultaten1 = queryset.order_by ('@ weight', '@id', 'my_attribute') resultaten2 = queryset.filter (my_attribute = 5) resultaten3 = queryset.filter (my_other_attribute = ) resultaten4 = queryset.exclude (my_attribute = 5) resultaten5 = queryset.count () # Vanaf 2.0 kunt u nu toegang krijgen tot een attribuut om het gewicht en soortgelijke argumenten te krijgen Resultaten in resultaten1: afdrukresultaat, resultaat._sphinx # U kunt ook toegang krijgen tot een vergelijkbare reeks meta-gegevens op de queryset zelf (zodra het is gesneden of uitgevoerd op welke manier dan ook) afdrukken resultaten1_Sphinxsome Aanvullende methoden: * Count () * Extra ( ) (doorgegeven aan de queryset) * ALL () (Niets) * Select_Related () (doorgegeven aan de queryset) * Group_by (veld, veld, veld) * Set_options (index = '', gewichten = {}, gewichten = ) De Django-SPHINX-laag ondersteunt ook zo Ik vraag het opvallen van meerdere indexen. Om dit te gebruiken, moet u eerst de regels van een Unie begrijpen. Uw indexen moeten precies dezelfde velden bevatten. Deze velden moeten ook een content_type-selectie bevatten die de inhoud_type-ID moet zijn die aan die tabel (model) is gekoppeld. U kunt dan zoiets doen: SPHINXSEARCH ('INDEX1 INDEX2 INDEX3'). Query ('Hallo') Dit zal een lijst retourneren van alle wedstrijden, besteld door gewicht, van alle indexen. Dit voert één SQL-query per index met wedstrijden uit, omdat de ORM van Django SQL Union niet ondersteunt. Vereisten: · Django · Python


Django-Sphinx Gerelateerde software

Ice.Adverlet

ICE.ADVERLET is een pakket voor op Zope3 gebaseerde sites - biedt een eenvoudige manier om een HTML-fragment te bewerken. ...

147

Downloaden