Django - Haystack Query Serialization
-
10-10-2019 - |
Question
I'm trying to serialize a HayStack SearchQuerySet
:
from django.core import serializers
serializers.serialize("json", SearchQuerySet().filter(content=request.GET['q']))
but it throws:
'SearchQuery' object has no attribute '_build_query'
How can I fix this?
Solution
I had faced a similar problem. used something like this and it worked:
serializers.serialize("json", [x.object for x in queryset]
OTHER TIPS
I don't recommend call 'object' per result as it would hit to database and beat purpose of search performance. Instead consider calling get_stored_fields method which can be used with json dumps:
import simplejson as json
data = map(lambda x: x.get_stored_fields(), search_result)
json.dumps(data)
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow