2010-12-08 9 views
7

Ich versuche, einen Heuhaufen SearchQuerySet zu serialisiert:Django - Haystack Abfrage Serialisierung

from django.core import serializers 
serializers.serialize("json", SearchQuerySet().filter(content=request.GET['q'])) 

aber es wirft:

'Search' Objekt hat kein Attribut '_build_query'

Wie kann ich das beheben?

Antwort

6

Ich hatte ein ähnliches Problem konfrontiert. verwendeten so etwas wie diese und es funktionierte:

serializers.serialize("json", [x.object for x in queryset]

6

ich, wie es zur Datenbank treffen würde nicht Anruf ‚Objekt‘ pro Ergebnis empfehlen und schlug Zweck der Suchleistung. Stattdessen erwägen Sie, get_stored_fields Methode aufzurufen, die mit JSON-Dumps verwendet werden kann:

import simplejson as json 
data = map(lambda x: x.get_stored_fields(), search_result) 
json.dumps(data) 
Verwandte Themen