HttpResponse vs. Render - PullRequest
       3

HttpResponse vs. Render

11 голосов
/ 05 сентября 2011

Я просматривал некоторый код и пришел к этому вопросу - Django: В чем разница между ч / б HttpResponse и HttpResponseRedirect по сравнению с render_to_response - в котором обсуждаются различные типы ответов на запросы.

Есть ли причина использовать HttpResponse сверх render?Если так, каков будет случай использования и преимущество этого?Спасибо.

Ответы [ 2 ]

12 голосов
/ 05 сентября 2011

render используется для того, что имя уже указывает: для отображения файла шаблона (в основном HTML, но может быть любого формата).render - это, по сути, простая оболочка вокруг HttpResponse, которая отображает шаблон, хотя, как сказано в предыдущем ответе, вы можете использовать HttpResponse, чтобы возвращать и другие вещи в ответе, а не только отображать шаблоны.

4 голосов
/ 05 сентября 2011

Конечно, скажем, вы делаете AJAX-вызов и хотите вернуть объект JSON:

return HttpResponse(jsonObj, mimetype='application/json')

Принятый ответ в исходном вопросе ссылается на этот метод.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...