Serializando objetos contendo conjuntos de consultas django

O Django fornece ferramentas para serializar conjuntos de consultas (django.core.serializers), mas e quanto a serialização de conjuntos de consultas que vivem dentro de outros objetos (como dicionários)?

Quero serializar o seguinte dicionário:

dictionary = { 'alfa': queryset1, 'beta': queryset2, } 

Eu decidi fazer isso usandosimplejson (vem com django). Eu estendisimplejson.JSONEncoder da seguinte maneira:

from django.utils import simplejson
from django.core import serializers

class HandleQuerySets(simplejson.JSONEncoder):
     """ simplejson.JSONEncoder extension: handle querysets """
     def default(self, obj):
         if isinstance(obj, QuerySet):
             return serializers.serialize("json", obj, ensure_ascii=False)

         return simplejson.JSONEncoder.default(self, obj)

Então eu faço:simplejson.dumps( dictionary, cls=HandleQuerySets), mas o dicionário retornado fica assim:

{ "alfa": "[{\"pk\": 1, \"model\": \"someapp.somemodel\", \"fields\": {\"name\": \"alfa\"}}]",
  "beta": "[{\"pk\": 1, \"model\": \"someapp.somemodel\", \"fields\": {\"name\": \"alfa\"}}]" }

JSON gerado pelo Django é inserido no dicionário como string, não JSON. O que estou fazendo errado?

questionAnswers(1)

yourAnswerToTheQuestion