diff options
Diffstat (limited to 'docs/topics/http')
| -rw-r--r-- | docs/topics/http/file-uploads.txt | 4 | ||||
| -rw-r--r-- | docs/topics/http/sessions.txt | 5 | ||||
| -rw-r--r-- | docs/topics/http/shortcuts.txt | 39 | ||||
| -rw-r--r-- | docs/topics/http/views.txt | 4 |
4 files changed, 15 insertions, 37 deletions
diff --git a/docs/topics/http/file-uploads.txt b/docs/topics/http/file-uploads.txt index ea01dfc88e..06ec03ee61 100644 --- a/docs/topics/http/file-uploads.txt +++ b/docs/topics/http/file-uploads.txt @@ -45,7 +45,7 @@ form as described in :ref:`binding-uploaded-files`. This would look something like:: from django.http import HttpResponseRedirect - from django.shortcuts import render_to_response + from django.shortcuts import render from .forms import UploadFileForm # Imaginary function to handle an uploaded file. @@ -59,7 +59,7 @@ something like:: return HttpResponseRedirect('/success/url/') else: form = UploadFileForm() - return render_to_response('upload.html', {'form': form}) + return render(request, 'upload.html', {'form': form}) Notice that we have to pass :attr:`request.FILES <django.http.HttpRequest.FILES>` into the form's constructor; this is how file data gets bound into a form. diff --git a/docs/topics/http/sessions.txt b/docs/topics/http/sessions.txt index f6a5bb4859..e149805a11 100644 --- a/docs/topics/http/sessions.txt +++ b/docs/topics/http/sessions.txt @@ -457,6 +457,9 @@ yourself. Do this after you've verified that the test cookie worked. Here's a typical usage example:: + from django.http import HttpResponse + from django.shortcuts import render + def login(request): if request.method == 'POST': if request.session.test_cookie_worked(): @@ -465,7 +468,7 @@ Here's a typical usage example:: else: return HttpResponse("Please enable cookies and try again.") request.session.set_test_cookie() - return render_to_response('foo/login_form.html') + return render(request, 'foo/login_form.html') Using sessions out of views =========================== diff --git a/docs/topics/http/shortcuts.txt b/docs/topics/http/shortcuts.txt index db2071684e..0733140e6f 100644 --- a/docs/topics/http/shortcuts.txt +++ b/docs/topics/http/shortcuts.txt @@ -20,10 +20,6 @@ introduce controlled coupling for convenience's sake. Combines a given template with a given context dictionary and returns an :class:`~django.http.HttpResponse` object with that rendered text. - :func:`render()` is the same as a call to - :func:`render_to_response()` with a ``context_instance`` argument that - forces the use of a :class:`~django.template.RequestContext`. - Django does not provide a shortcut function which returns a :class:`~django.template.response.TemplateResponse` because the constructor of :class:`~django.template.response.TemplateResponse` offers the same level @@ -36,7 +32,10 @@ Required arguments The request object used to generate this response. ``template_name`` - The full name of a template to use or sequence of template names. + The full name of a template to use or sequence of template names. If a + sequence is given, the first template that exists will be used. See the + :ref:`template loading documentation <template-loading>` for more + information on how templates are found. Optional arguments ------------------ @@ -119,8 +118,9 @@ This example is equivalent to:: .. function:: render_to_response(template_name, context=None, context_instance=_context_instance_undefined, content_type=None, status=None, dirs=_dirs_undefined, using=None) - Renders a given template with a given context dictionary and returns an - :class:`~django.http.HttpResponse` object with that rendered text. + This function preceded the introduction of :func:`render` and works + similarly except that it doesn't making the ``request`` available in the + response. It's not recommended and is likely to be deprecated in the future. Required arguments ------------------ @@ -180,31 +180,6 @@ Optional arguments The ``dirs`` parameter was deprecated. -Example -------- - -The following example renders the template ``myapp/index.html`` with the -MIME type :mimetype:`application/xhtml+xml`:: - - from django.shortcuts import render_to_response - - def my_view(request): - # View code here... - return render_to_response('myapp/index.html', {"foo": "bar"}, - content_type="application/xhtml+xml") - -This example is equivalent to:: - - from django.http import HttpResponse - from django.template import Context, loader - - def my_view(request): - # View code here... - t = loader.get_template('myapp/index.html') - c = Context({'foo': 'bar'}) - return HttpResponse(t.render(c), - content_type="application/xhtml+xml") - ``redirect`` ============ diff --git a/docs/topics/http/views.txt b/docs/topics/http/views.txt index 26b28da6a2..c21012fa64 100644 --- a/docs/topics/http/views.txt +++ b/docs/topics/http/views.txt @@ -112,7 +112,7 @@ standard error page for your application, along with an HTTP error code 404. Example usage:: from django.http import Http404 - from django.shortcuts import render_to_response + from django.shortcuts import render from polls.models import Poll def detail(request, poll_id): @@ -120,7 +120,7 @@ Example usage:: p = Poll.objects.get(pk=poll_id) except Poll.DoesNotExist: raise Http404("Poll does not exist") - return render_to_response('polls/detail.html', {'poll': p}) + return render(request, 'polls/detail.html', {'poll': p}) In order to show customized HTML when Django returns a 404, you can create an HTML template named ``404.html`` and place it in the top level of your |
