Question

Bonjour je veux avoir une version texte brut de mon contenu disponible. J'ai donc un modèle distinct pour cela. J'appelle render_to_response avec mimetype="text/plain" mais je veux dire à un navigateur d'ouvrir cette page dans le http-réponse que le contenu est utf-8 codé. Comment puis-je le faire (par exemple ce que dois-je ajouter à render_to_response)?

Était-ce utile?

La solution

Il suffit d'ajouter à charset mimetype comme ceci:

mimetype="text/html; charset=utf-8"

Qu'est-ce qui se passe vraiment derrière la scène est que mimetype est prise sur kwargs dans render_to_response.

httpresponse_kwargs = {'mimetype': kwargs.pop('mimetype', None)}
return HttpResponse(loader.render_to_string(*args, **kwargs), **httpresponse_kwargs)

et envoyé à HttpResponse qui la définit comme content_type:

if mimetype:
    content_type = mimetype     # For backwards compatibility
if not content_type:
    content_type = "%s; charset=%s" % (settings.DEFAULT_CONTENT_TYPE,
                settings.DEFAULT_CHARSET)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top