Django JSON Serialización con modelos mixtos de Django y un diccionario

Parece que no puedo encontrar una buena manera de serializar los diccionarios Django y Python juntos, es bastante común para mí devolver una respuesta json que se parece a

{ "modified":updated_object, "success":true ... some additional data... } 

Es lo suficientemente simple como para usar simplejson para serializar un dict o los serializadores de Django. Serializar para serializar un modelo, pero cuando los mezclo consigo errores.

¿Hay una mejor manera de hacer esto?

¿No puede simplemente convertir la instancia del modelo a un dict, unirse al otro dictado y luego serializar?

 from django.forms import model_to_dict dict = model_to_dict(instance) dict.update(dict2) ... Then serialize here ... 

No sé sobre ser “mejor” … 🙂

Estoy usando esto (donde los products es queryset):

 response = {} products_list = list(products.values('id', 'name', 'description')) response['products'] = products_list response['more_data'] = 'more, more, more, things' json_data = json.dumps(response) 

Usando este método, puede seleccionar solo los campos que desee (hacer json y la consulta de la base de datos más pequeños).