diff options
| author | Tobias Kunze <r@rixx.de> | 2019-06-17 16:54:55 +0200 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2019-09-06 13:27:46 +0200 |
| commit | 4a954cfd11a5d034491f87fcbc920eb97a302bb3 (patch) | |
| tree | 1c92caae5d8a9b33c51ddd74b4b2061248f3915f /docs/topics/http | |
| parent | addabc492bdc0191ac95d59ec34b56b34086ebb9 (diff) | |
Fixed #30573 -- Rephrased documentation to avoid words that minimise the involved difficulty.
This patch does not remove all occurrences of the words in question.
Rather, I went through all of the occurrences of the words listed
below, and judged if they a) suggested the reader had some kind of
knowledge/experience, and b) if they added anything of value (including
tone of voice, etc). I left most of the words alone. I looked at the
following words:
- simply/simple
- easy/easier/easiest
- obvious
- just
- merely
- straightforward
- ridiculous
Thanks to Carlton Gibson for guidance on how to approach this issue, and
to Tim Bell for providing the idea. But the enormous lion's share of
thanks go to Adam Johnson for his patient and helpful review.
Diffstat (limited to 'docs/topics/http')
| -rw-r--r-- | docs/topics/http/file-uploads.txt | 19 | ||||
| -rw-r--r-- | docs/topics/http/sessions.txt | 17 | ||||
| -rw-r--r-- | docs/topics/http/urls.txt | 18 | ||||
| -rw-r--r-- | docs/topics/http/views.txt | 14 |
4 files changed, 33 insertions, 35 deletions
diff --git a/docs/topics/http/file-uploads.txt b/docs/topics/http/file-uploads.txt index 21a6f06853..534582cbf6 100644 --- a/docs/topics/http/file-uploads.txt +++ b/docs/topics/http/file-uploads.txt @@ -19,7 +19,7 @@ and in memory, and how to customize the default behavior. Basic file uploads ================== -Consider a simple form containing a :class:`~django.forms.FileField`: +Consider a form containing a :class:`~django.forms.FileField`: .. code-block:: python :caption: forms.py @@ -42,9 +42,8 @@ contain data if the request method was ``POST`` and the ``<form>`` that posted the request has the attribute ``enctype="multipart/form-data"``. Otherwise, ``request.FILES`` will be empty. -Most of the time, you'll simply pass the file data from ``request`` into the -form as described in :ref:`binding-uploaded-files`. This would look -something like: +Most of the time, you'll pass the file data from ``request`` into the form as +described in :ref:`binding-uploaded-files`. This would look something like: .. code-block:: python :caption: views.py @@ -107,9 +106,9 @@ corresponding :class:`~django.db.models.FileField` when calling form = ModelFormWithFileField() return render(request, 'upload.html', {'form': form}) -If you are constructing an object manually, you can simply assign the file -object from :attr:`request.FILES <django.http.HttpRequest.FILES>` to the file -field in the model:: +If you are constructing an object manually, you can assign the file object from +:attr:`request.FILES <django.http.HttpRequest.FILES>` to the file field in the +model:: from django.http import HttpResponseRedirect from django.shortcuts import render @@ -205,8 +204,8 @@ platform this means you can expect Django to generate a file called something like ``/tmp/tmpzfp6I6.upload``. If an upload is large enough, you can watch this file grow in size as Django streams the data onto disk. -These specifics -- 2.5 megabytes; ``/tmp``; etc. -- are simply "reasonable -defaults" which can be customized as described in the next section. +These specifics -- 2.5 megabytes; ``/tmp``; etc. -- are "reasonable defaults" +which can be customized as described in the next section. Changing upload handler behavior -------------------------------- @@ -235,7 +234,7 @@ You'd probably want to use ``list.insert()`` in this case (instead of ``append()``) because a progress bar handler would need to run *before* any other handlers. Remember, the upload handlers are processed in order. -If you want to replace the upload handlers completely, you can just assign a new +If you want to replace the upload handlers completely, you can assign a new list:: request.upload_handlers = [ProgressBarUploadHandler(request)] diff --git a/docs/topics/http/sessions.txt b/docs/topics/http/sessions.txt index 757e60c341..5921ba6625 100644 --- a/docs/topics/http/sessions.txt +++ b/docs/topics/http/sessions.txt @@ -379,7 +379,7 @@ convenience and security. If you wish to store more advanced data types including ``datetime`` and ``Decimal`` in JSON backed sessions, you will need to write a custom serializer (or convert such values to a JSON serializable object before storing them in ``request.session``). While serializing these -values is fairly straightforward +values is often straightforward (:class:`~django.core.serializers.json.DjangoJSONEncoder` may be helpful), writing a decoder that can reliably get back the same thing that you put in is more fragile. For example, you run the risk of returning a ``datetime`` that @@ -444,10 +444,9 @@ objects, not as a full ``logout()`` implementation. Setting test cookies ==================== -As a convenience, Django provides an easy way to test whether the user's -browser accepts cookies. Just call the -:meth:`~backends.base.SessionBase.set_test_cookie` method of -``request.session`` in a view, and call +As a convenience, Django provides a way to test whether the user's browser +accepts cookies. Call the :meth:`~backends.base.SessionBase.set_test_cookie` +method of ``request.session`` in a view, and call :meth:`~backends.base.SessionBase.test_cookie_worked` in a subsequent view -- not in the same view call. @@ -509,7 +508,7 @@ generating a ``session_key`` that collides with an existing one. ``create()`` calls ``save()`` and loops until an unused ``session_key`` is generated. If you're using the ``django.contrib.sessions.backends.db`` backend, each -session is just a normal Django model. The ``Session`` model is defined in +session is a normal Django model. The ``Session`` model is defined in ``django/contrib/sessions/models.py``. Because it's a normal model, you can access sessions using the normal Django database API:: @@ -701,9 +700,9 @@ In order to build a custom session engine or to customize an existing one, you may create a new class inheriting from :class:`~backends.base.SessionBase` or any other existing ``SessionStore`` class. -Extending most of the session engines is quite straightforward, but doing so -with database-backed session engines generally requires some extra effort (see -the next section for details). +You can extend the session engines, but doing so with database-backed session +engines generally requires some extra effort (see the next section for +details). .. _extending-database-backed-session-engines: diff --git a/docs/topics/http/urls.txt b/docs/topics/http/urls.txt index ed7257d847..4283d6ebe1 100644 --- a/docs/topics/http/urls.txt +++ b/docs/topics/http/urls.txt @@ -48,7 +48,7 @@ algorithm the system follows to determine which Python code to execute: one that matches the requested URL. #. Once one of the URL patterns matches, Django imports and calls the given - view, which is a simple Python function (or a :doc:`class-based view + view, which is a Python function (or a :doc:`class-based view </topics/class-based-views/index>`). The view gets passed the following arguments: @@ -131,7 +131,7 @@ The following path converters are available by default: * ``path`` - Matches any non-empty string, including the path separator, ``'/'``. This allows you to match against a complete URL path rather than - just a segment of a URL path as with ``str``. + a segment of a URL path as with ``str``. .. _registering-custom-path-converters: @@ -679,13 +679,13 @@ instances of an application are deployed. In other words, since multiple instances of a single application will share named URLs, namespaces provide a way to tell these named URLs apart. -Django applications that make proper use of URL namespacing can be deployed more -than once for a particular site. For example :mod:`django.contrib.admin` has an -:class:`~django.contrib.admin.AdminSite` class which allows you to easily -:ref:`deploy more than one instance of the admin <multiple-admin-sites>`. -In a later example, we'll discuss the idea of deploying the polls application -from the tutorial in two different locations so we can serve the same -functionality to two different audiences (authors and publishers). +Django applications that make proper use of URL namespacing can be deployed +more than once for a particular site. For example :mod:`django.contrib.admin` +has an :class:`~django.contrib.admin.AdminSite` class which allows you to +:ref:`deploy more than one instance of the admin <multiple-admin-sites>`. In a +later example, we'll discuss the idea of deploying the polls application from +the tutorial in two different locations so we can serve the same functionality +to two different audiences (authors and publishers). A URL namespace comes in two parts, both of which are strings: diff --git a/docs/topics/http/views.txt b/docs/topics/http/views.txt index baacd233b5..3076192676 100644 --- a/docs/topics/http/views.txt +++ b/docs/topics/http/views.txt @@ -2,7 +2,7 @@ Writing views ============= -A view function, or *view* for short, is simply a Python function that takes a +A view function, or *view* for short, is a Python function that takes a Web request and returns a Web response. This response can be the HTML contents of a Web page, or a redirect, or a 404 error, or an XML document, or an image . . . or anything, really. The view itself contains whatever arbitrary logic is @@ -60,12 +60,12 @@ date and time. To display this view at a particular URL, you'll need to create a Returning errors ================ -Returning HTTP error codes in Django is easy. There are subclasses of +Django provides help for returning HTTP error codes. There are subclasses of :class:`~django.http.HttpResponse` for a number of common HTTP status codes other than 200 (which means *"OK"*). You can find the full list of available subclasses in the :ref:`request/response <ref-httpresponse-subclasses>` -documentation. Just return an instance of one of those subclasses instead of -a normal :class:`~django.http.HttpResponse` in order to signify an error. For +documentation. Return an instance of one of those subclasses instead of a +normal :class:`~django.http.HttpResponse` in order to signify an error. For example:: from django.http import HttpResponse, HttpResponseNotFound @@ -138,9 +138,9 @@ Customizing error views ======================= The default error views in Django should suffice for most Web applications, -but can easily be overridden if you need any custom behavior. Simply specify -the handlers as seen below in your URLconf (setting them anywhere else will -have no effect). +but can easily be overridden if you need any custom behavior. Specify the +handlers as seen below in your URLconf (setting them anywhere else will have no +effect). The :func:`~django.views.defaults.page_not_found` view is overridden by :data:`~django.conf.urls.handler404`:: |
