Esta relacionado con esta pregunta: Django return json and html depending on client pythonvista de Django volver JSON sin utilizar la plantilla
que tienen una API de Python línea de comandos para una aplicación de Django. Cuando accedo a la aplicación a través de la API, debe devolver json y con un navegador debe devolver html. Puedo usar diferentes URL para acceder a las diferentes versiones, pero ¿cómo puedo renderizar la plantilla html y json en views.py con solo una plantilla?
Para hacer que el html yo usaría:
return render_to_response('sample/sample.html....)
Pero ¿cómo iba a hacer lo mismo para JSON sin poner una plantilla JSON? (El tipo de contenido debe ser application/json en lugar de texto/html)
Edición 1:
Lo que determinaría las salidas JSON y html?
Así que en mis puntos de vista:
if something:
return render_to_response('html_template',.....)
else:
return HttpReponse(jsondata,mimetype='application/json')
Gracias
¿No leyeron mi respuesta? – Marcin
@Marcin Básicamente le dijiste "No, no lo hagas de esta manera" sin mostrarle un ejemplo de la manera correcta. Para eso parece ser esto ... – Izkata
@Jimmy, si eso es lo que pasó, no deberías haber aceptado la respuesta de Marcin sobre la otra pregunta tan rápido. Espera al menos un día, alguien probablemente habría respondido con algo como la respuesta de Uku Loskit – Izkata