diff --git a/AUTHORS b/AUTHORS
index 33e1bdc91a..0b7dd6ad72 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -1,4 +1,4 @@
-Django was originally created in late 2003 at World Online, the Web division
+Django was originally created in late 2003 at World Online, the web division
of the Lawrence Journal-World newspaper in Lawrence, Kansas.
Here is an inevitably incomplete list of MUCH-APPRECIATED CONTRIBUTORS --
diff --git a/README.rst b/README.rst
index 640a66715f..6d0940d88e 100644
--- a/README.rst
+++ b/README.rst
@@ -2,7 +2,7 @@
Django
======
-Django is a high-level Python Web framework that encourages rapid development
+Django is a high-level Python web framework that encourages rapid development
and clean, pragmatic design. Thanks for checking it out.
All documentation is in the "``docs``" directory and online at
diff --git a/django/conf/global_settings.py b/django/conf/global_settings.py
index d9272f6cc1..b9541d81b5 100644
--- a/django/conf/global_settings.py
+++ b/django/conf/global_settings.py
@@ -471,7 +471,7 @@ SESSION_COOKIE_HTTPONLY = True
SESSION_COOKIE_SAMESITE = 'Lax'
# Whether to save the session data on every request.
SESSION_SAVE_EVERY_REQUEST = False
-# Whether a user's session cookie expires when the Web browser is closed.
+# Whether a user's session cookie expires when the web browser is closed.
SESSION_EXPIRE_AT_BROWSER_CLOSE = False
# The module to store session data
SESSION_ENGINE = 'django.contrib.sessions.backends.db'
diff --git a/django/contrib/admin/templates/registration/logged_out.html b/django/contrib/admin/templates/registration/logged_out.html
index 460e17eafd..e9a5545024 100644
--- a/django/contrib/admin/templates/registration/logged_out.html
+++ b/django/contrib/admin/templates/registration/logged_out.html
@@ -7,7 +7,7 @@
{% block content %}
-
{% translate "Thanks for spending some quality time with the Web site today." %}
+
{% translate "Thanks for spending some quality time with the web site today." %}
diff --git a/django/contrib/admin/utils.py b/django/contrib/admin/utils.py
index 7eea70b194..5821db5ffe 100644
--- a/django/contrib/admin/utils.py
+++ b/django/contrib/admin/utils.py
@@ -69,7 +69,7 @@ def quote(s):
Ensure that primary key values do not confuse the admin URLs by escaping
any '/', '_' and ':' and similarly problematic characters.
Similar to urllib.parse.quote(), except that the quoting is slightly
- different so that it doesn't get automatically unquoted by the Web browser.
+ different so that it doesn't get automatically unquoted by the web browser.
"""
return s.translate(QUOTE_MAP) if isinstance(s, str) else s
diff --git a/django/contrib/auth/middleware.py b/django/contrib/auth/middleware.py
index 1cd84f1cc9..89699a7f82 100644
--- a/django/contrib/auth/middleware.py
+++ b/django/contrib/auth/middleware.py
@@ -27,7 +27,7 @@ class AuthenticationMiddleware(MiddlewareMixin):
class RemoteUserMiddleware(MiddlewareMixin):
"""
- Middleware for utilizing Web-server-provided authentication.
+ Middleware for utilizing web-server-provided authentication.
If request.user is not authenticated, then this middleware attempts to
authenticate the username passed in the ``REMOTE_USER`` request header.
@@ -113,7 +113,7 @@ class RemoteUserMiddleware(MiddlewareMixin):
class PersistentRemoteUserMiddleware(RemoteUserMiddleware):
"""
- Middleware for Web-server provided authentication on logon pages.
+ Middleware for web-server provided authentication on logon pages.
Like RemoteUserMiddleware but keeps the user authenticated even if
the header (``REMOTE_USER``) is not found in the request. Useful
diff --git a/django/contrib/gis/gdal/srs.py b/django/contrib/gis/gdal/srs.py
index fd6509600c..5df8b54ab2 100644
--- a/django/contrib/gis/gdal/srs.py
+++ b/django/contrib/gis/gdal/srs.py
@@ -43,7 +43,7 @@ class AxisOrder(IntEnum):
class SpatialReference(GDALBase):
"""
- A wrapper for the OGRSpatialReference object. According to the GDAL Web site,
+ A wrapper for the OGRSpatialReference object. According to the GDAL web site,
the SpatialReference object "provide[s] services to represent coordinate
systems (projections and datums) and to transform between them."
"""
diff --git a/django/contrib/gis/geometry.py b/django/contrib/gis/geometry.py
index 815d8257d7..d92a17c964 100644
--- a/django/contrib/gis/geometry.py
+++ b/django/contrib/gis/geometry.py
@@ -4,7 +4,7 @@ from django.utils.regex_helper import _lazy_re_compile
# Regular expression for recognizing HEXEWKB and WKT. A prophylactic measure
# to prevent potentially malicious input from reaching the underlying C
-# library. Not a substitute for good Web security programming practices.
+# library. Not a substitute for good web security programming practices.
hex_regex = _lazy_re_compile(r'^[0-9A-F]+$', re.I)
wkt_regex = _lazy_re_compile(
r'^(SRID=(?P\-?\d+);)?'
diff --git a/django/contrib/sessions/models.py b/django/contrib/sessions/models.py
index a744267927..cb7a3f7c2f 100644
--- a/django/contrib/sessions/models.py
+++ b/django/contrib/sessions/models.py
@@ -22,7 +22,7 @@ class Session(AbstractBaseSession):
For complete documentation on using Sessions in your code, consult
the sessions documentation that is shipped with Django (also available
- on the Django Web site).
+ on the Django web site).
"""
objects = SessionManager()
diff --git a/django/contrib/staticfiles/management/commands/runserver.py b/django/contrib/staticfiles/management/commands/runserver.py
index fe050f4dfa..cf9605ee97 100644
--- a/django/contrib/staticfiles/management/commands/runserver.py
+++ b/django/contrib/staticfiles/management/commands/runserver.py
@@ -6,7 +6,7 @@ from django.core.management.commands.runserver import (
class Command(RunserverCommand):
- help = "Starts a lightweight Web server for development and also serves static files."
+ help = "Starts a lightweight web server for development and also serves static files."
def add_arguments(self, parser):
super().add_arguments(parser)
diff --git a/django/core/files/storage.py b/django/core/files/storage.py
index fcc382b6fc..8ee6443d2b 100644
--- a/django/core/files/storage.py
+++ b/django/core/files/storage.py
@@ -154,7 +154,7 @@ class Storage:
def url(self, name):
"""
Return an absolute URL where the file's contents can be accessed
- directly by a Web browser.
+ directly by a web browser.
"""
raise NotImplementedError('subclasses of Storage must provide a url() method')
diff --git a/django/core/handlers/wsgi.py b/django/core/handlers/wsgi.py
index 2c1c4db241..dc65f114e5 100644
--- a/django/core/handlers/wsgi.py
+++ b/django/core/handlers/wsgi.py
@@ -169,7 +169,7 @@ def get_script_name(environ):
# If Apache's mod_rewrite had a whack at the URL, Apache set either
# SCRIPT_URL or REDIRECT_URL to the full resource URL before applying any
- # rewrites. Unfortunately not every Web server (lighttpd!) passes this
+ # rewrites. Unfortunately not every web server (lighttpd!) passes this
# information through all the time, so FORCE_SCRIPT_NAME, above, is still
# needed.
script_url = get_bytes_from_wsgi(environ, 'SCRIPT_URL', '') or get_bytes_from_wsgi(environ, 'REDIRECT_URL', '')
diff --git a/django/core/management/commands/runserver.py b/django/core/management/commands/runserver.py
index 1e8f4d3b25..66f5217820 100644
--- a/django/core/management/commands/runserver.py
+++ b/django/core/management/commands/runserver.py
@@ -22,7 +22,7 @@ naiveip_re = _lazy_re_compile(r"""^(?:
class Command(BaseCommand):
- help = "Starts a lightweight Web server for development."
+ help = "Starts a lightweight web server for development."
# Validation is called explicitly each time the server is reloaded.
requires_system_checks = []
diff --git a/django/test/client.py b/django/test/client.py
index b4c091aa5c..dd735dd833 100644
--- a/django/test/client.py
+++ b/django/test/client.py
@@ -98,7 +98,7 @@ def closing_iterator_wrapper(iterable, close):
def conditional_content_removal(request, response):
"""
- Simulate the behavior of most Web servers by removing the content of
+ Simulate the behavior of most web servers by removing the content of
responses for HEAD requests, 1xx, 204, and 304 responses. Ensure
compliance with RFC 7230, section 3.3.3.
"""
@@ -144,7 +144,7 @@ class ClientHandler(BaseHandler):
# Request goes through middleware.
response = self.get_response(request)
- # Simulate behaviors of most Web servers.
+ # Simulate behaviors of most web servers.
conditional_content_removal(request, response)
# Attach the originating request to the response so that it could be
@@ -190,7 +190,7 @@ class AsyncClientHandler(BaseHandler):
request._dont_enforce_csrf_checks = not self.enforce_csrf_checks
# Request goes through middleware.
response = await self.get_response_async(request)
- # Simulate behaviors of most Web servers.
+ # Simulate behaviors of most web servers.
conditional_content_removal(request, response)
# Attach the originating ASGI request to the response so that it could
# be later retrieved.
diff --git a/django/utils/datastructures.py b/django/utils/datastructures.py
index e605ce0720..f1e9986ca1 100644
--- a/django/utils/datastructures.py
+++ b/django/utils/datastructures.py
@@ -65,7 +65,7 @@ class MultiValueDict(dict):
>>> d.setlist('lastname', ['Holovaty', 'Willison'])
This class exists to solve the irritating problem raised by cgi.parse_qs,
- which returns a list for every key, even though most Web forms submit
+ which returns a list for every key, even though most web forms submit
single name-value pairs.
"""
def __init__(self, key_to_list_mapping=()):
diff --git a/django/utils/feedgenerator.py b/django/utils/feedgenerator.py
index 50ede4dd21..857beff13a 100644
--- a/django/utils/feedgenerator.py
+++ b/django/utils/feedgenerator.py
@@ -7,7 +7,7 @@ Sample usage:
>>> feed = feedgenerator.Rss201rev2Feed(
... title="Poynter E-Media Tidbits",
... link="http://www.poynter.org/column.asp?id=31",
-... description="A group Weblog by the sharpest minds in online media/journalism/publishing.",
+... description="A group blog by the sharpest minds in online media/journalism/publishing.",
... language="en",
... )
>>> feed.add_item(
diff --git a/django/views/csrf.py b/django/views/csrf.py
index 72ac8ba4d6..f40f776701 100644
--- a/django/views/csrf.py
+++ b/django/views/csrf.py
@@ -113,7 +113,7 @@ def csrf_failure(request, reason="", template_name=CSRF_FAILURE_TEMPLATE_NAME):
'no_referer': reason == REASON_NO_REFERER,
'no_referer1': _(
'You are seeing this message because this HTTPS site requires a '
- '“Referer header” to be sent by your Web browser, but none was '
+ '“Referer header” to be sent by your web browser, but none was '
'sent. This header is required for security reasons, to ensure '
'that your browser is not being hijacked by third parties.'),
'no_referer2': _(
diff --git a/docs/conf.py b/docs/conf.py
index a1754e18ce..81b06292b4 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -317,7 +317,7 @@ latex_documents = [
man_pages = [(
'ref/django-admin',
'django-admin',
- 'Utility script for the Django Web framework',
+ 'Utility script for the Django web framework',
['Django Software Foundation'],
1
)]
diff --git a/docs/faq/general.txt b/docs/faq/general.txt
index f984695d50..1be9dc0cf4 100644
--- a/docs/faq/general.txt
+++ b/docs/faq/general.txt
@@ -5,18 +5,18 @@ FAQ: General
Why does this project exist?
============================
-Django grew from a very practical need: World Online, a newspaper Web
-operation, is responsible for building intensive Web applications on journalism
+Django grew from a very practical need: World Online, a newspaper web
+operation, is responsible for building intensive web applications on journalism
deadlines. In the fast-paced newsroom, World Online often has only a matter of
-hours to take a complicated Web application from concept to public launch.
+hours to take a complicated web application from concept to public launch.
-At the same time, the World Online Web developers have consistently been
-perfectionists when it comes to following best practices of Web development.
+At the same time, the World Online web developers have consistently been
+perfectionists when it comes to following best practices of web development.
In fall 2003, the World Online developers (Adrian Holovaty and Simon Willison)
ditched PHP and began using Python to develop its websites. As they built
intensive, richly interactive sites such as Lawrence.com, they began to extract
-a generic Web development framework that let them build Web applications more
+a generic web development framework that let them build web applications more
and more quickly. They tweaked this framework constantly, adding improvements
over two years.
@@ -58,7 +58,7 @@ Yes. Compared to development time, hardware is cheap, and so Django is
designed to take advantage of as much hardware as you can throw at it.
Django uses a "shared-nothing" architecture, which means you can add hardware
-at any level -- database servers, caching servers or Web/application servers.
+at any level -- database servers, caching servers or web/application servers.
The framework cleanly separates components such as its database layer and
application layer. And it ships with a simple-yet-powerful
@@ -67,7 +67,7 @@ application layer. And it ships with a simple-yet-powerful
Who's behind this?
==================
-Django was originally developed at World Online, the Web department of a
+Django was originally developed at World Online, the web department of a
newspaper in Lawrence, Kansas, USA. Django's now run by an international
`team of volunteers `_.
@@ -127,7 +127,7 @@ us.
does -- why doesn't Django?
=====================================================
-We're well aware that there are other awesome Web frameworks out there, and
+We're well aware that there are other awesome web frameworks out there, and
we're not averse to borrowing ideas where appropriate. However, Django was
developed precisely because we were unhappy with the status quo, so please be
aware that "because does it" is not going to be sufficient reason
@@ -137,7 +137,7 @@ Why did you write all of Django from scratch, instead of using other Python libr
======================================================================================
When Django was originally written, Adrian and Simon spent quite a bit of time
-exploring the various Python Web frameworks available.
+exploring the various Python web frameworks available.
In our opinion, none of them were completely up to snuff.
@@ -162,7 +162,7 @@ Is Django a content-management-system (CMS)?
============================================
No, Django is not a CMS, or any sort of "turnkey product" in and of itself.
-It's a Web framework; it's a programming tool that lets you build websites.
+It's a web framework; it's a programming tool that lets you build websites.
For example, it doesn't make much sense to compare Django to something like
Drupal_, because Django is something you use to *create* things like Drupal.
@@ -179,7 +179,7 @@ How can I download the Django documentation to read it offline?
The Django docs are available in the ``docs`` directory of each Django tarball
release. These docs are in reST (reStructuredText) format, and each text file
-corresponds to a Web page on the official Django site.
+corresponds to a web page on the official Django site.
Because the documentation is :source:`stored in revision control `, you
can browse documentation changes just like you can browse code changes.
diff --git a/docs/faq/install.txt b/docs/faq/install.txt
index 716c4fb557..bf73909296 100644
--- a/docs/faq/install.txt
+++ b/docs/faq/install.txt
@@ -23,7 +23,7 @@ required for some use cases, but you'll receive an error about them as they're
needed.
For a development environment -- if you just want to experiment with Django --
-you don't need to have a separate Web server installed or database server.
+you don't need to have a separate web server installed or database server.
Django comes with its own :djadmin:`lightweight development server`.
For a production environment, Django follows the WSGI spec, :pep:`3333`, which
diff --git a/docs/faq/usage.txt b/docs/faq/usage.txt
index f95ca11174..6cba335c02 100644
--- a/docs/faq/usage.txt
+++ b/docs/faq/usage.txt
@@ -42,7 +42,7 @@ Using a :class:`~django.db.models.FileField` or an
the full path to a directory where you'd like Django to store uploaded
files. (For performance, these files are not stored in the database.)
Define :setting:`MEDIA_URL` as the base public URL of that directory.
- Make sure that this directory is writable by the Web server's user
+ Make sure that this directory is writable by the web server's user
account.
#. Add the :class:`~django.db.models.FileField` or
diff --git a/docs/howto/auth-remote-user.txt b/docs/howto/auth-remote-user.txt
index 66c35943ba..20bd84d055 100644
--- a/docs/howto/auth-remote-user.txt
+++ b/docs/howto/auth-remote-user.txt
@@ -3,7 +3,7 @@ How to authenticate using ``REMOTE_USER``
=========================================
This document describes how to make use of external authentication sources
-(where the Web server sets the ``REMOTE_USER`` environment variable) in your
+(where the web server sets the ``REMOTE_USER`` environment variable) in your
Django applications. This type of authentication solution is typically seen on
intranet sites, with single sign-on solutions such as IIS and Integrated
Windows Authentication or Apache and `mod_authnz_ldap`_, `CAS`_, `Cosign`_,
@@ -15,7 +15,7 @@ Windows Authentication or Apache and `mod_authnz_ldap`_, `CAS`_, `Cosign`_,
.. _WebAuth: https://uit.stanford.edu/service/authentication
.. _mod_auth_sspi: https://sourceforge.net/projects/mod-auth-sspi
-When the Web server takes care of authentication it typically sets the
+When the web server takes care of authentication it typically sets the
``REMOTE_USER`` environment variable for use in the underlying application. In
Django, ``REMOTE_USER`` is made available in the :attr:`request.META
` attribute. Django can be configured to make
diff --git a/docs/howto/deployment/checklist.txt b/docs/howto/deployment/checklist.txt
index f5133185fa..7f19ac9a71 100644
--- a/docs/howto/deployment/checklist.txt
+++ b/docs/howto/deployment/checklist.txt
@@ -85,7 +85,7 @@ you use a wildcard, you must perform your own validation of the ``Host`` HTTP
header, or otherwise ensure that you aren't vulnerable to this category of
attacks.
-You should also configure the Web server that sits in front of Django to
+You should also configure the web server that sits in front of Django to
validate the host. It should respond with a static error page or ignore
requests for incorrect hosts instead of forwarding the request to Django. This
way you'll avoid spurious errors in your Django logs (or emails if you have
@@ -249,5 +249,5 @@ Django includes default views and templates for several HTTP error codes. You
may want to override the default templates by creating the following templates
in your root template directory: ``404.html``, ``500.html``, ``403.html``, and
``400.html``. The :ref:`default error views ` that use these
-templates should suffice for 99% of Web applications, but you can
+templates should suffice for 99% of web applications, but you can
:ref:`customize them ` as well.
diff --git a/docs/howto/deployment/index.txt b/docs/howto/deployment/index.txt
index c1cb6d8cd2..ef55a8dcfa 100644
--- a/docs/howto/deployment/index.txt
+++ b/docs/howto/deployment/index.txt
@@ -2,7 +2,7 @@
Deploying Django
================
-Django is full of shortcuts to make Web developers' lives easier, but all
+Django is full of shortcuts to make web developers' lives easier, but all
those tools are of no use if you can't easily deploy your sites. Since Django's
inception, ease of deployment has been a major goal.
@@ -16,7 +16,7 @@ make that communication happen.
Django currently supports two interfaces: WSGI and ASGI.
-* `WSGI`_ is the main Python standard for communicating between Web servers and
+* `WSGI`_ is the main Python standard for communicating between web servers and
applications, but it only supports synchronous code.
* `ASGI`_ is the new, asynchronous-friendly standard that will allow your
diff --git a/docs/howto/deployment/wsgi/modwsgi.txt b/docs/howto/deployment/wsgi/modwsgi.txt
index fa56f4ee03..e12c927cf4 100644
--- a/docs/howto/deployment/wsgi/modwsgi.txt
+++ b/docs/howto/deployment/wsgi/modwsgi.txt
@@ -131,10 +131,10 @@ mode`_.
Serving files
=============
-Django doesn't serve files itself; it leaves that job to whichever Web
+Django doesn't serve files itself; it leaves that job to whichever web
server you choose.
-We recommend using a separate Web server -- i.e., one that's not also running
+We recommend using a separate web server -- i.e., one that's not also running
Django -- for serving media. Here are some good choices:
* Nginx_
@@ -189,15 +189,15 @@ When :mod:`django.contrib.staticfiles` is in :setting:`INSTALLED_APPS`, the
Django development server automatically serves the static files of the
admin app (and any other installed apps). This is however not the case when you
use any other server arrangement. You're responsible for setting up Apache, or
-whichever Web server you're using, to serve the admin files.
+whichever web server you're using, to serve the admin files.
The admin files live in (:file:`django/contrib/admin/static/admin`) of the
Django distribution.
We **strongly** recommend using :mod:`django.contrib.staticfiles` to handle the
-admin files (along with a Web server as outlined in the previous section; this
+admin files (along with a web server as outlined in the previous section; this
means using the :djadmin:`collectstatic` management command to collect the
-static files in :setting:`STATIC_ROOT`, and then configuring your Web server to
+static files in :setting:`STATIC_ROOT`, and then configuring your web server to
serve :setting:`STATIC_ROOT` at :setting:`STATIC_URL`), but here are three
other approaches:
diff --git a/docs/howto/deployment/wsgi/uwsgi.txt b/docs/howto/deployment/wsgi/uwsgi.txt
index 6e66189b4e..f441d73f04 100644
--- a/docs/howto/deployment/wsgi/uwsgi.txt
+++ b/docs/howto/deployment/wsgi/uwsgi.txt
@@ -37,7 +37,7 @@ command. For example:
uWSGI model
-----------
-uWSGI operates on a client-server model. Your Web server (e.g., nginx, Apache)
+uWSGI operates on a client-server model. Your web server (e.g., nginx, Apache)
communicates with a ``django-uwsgi`` "worker" process to serve dynamic content.
Configuring and starting the uWSGI server for Django
diff --git a/docs/howto/error-reporting.txt b/docs/howto/error-reporting.txt
index 06fc434f67..a445514c98 100644
--- a/docs/howto/error-reporting.txt
+++ b/docs/howto/error-reporting.txt
@@ -64,9 +64,9 @@ not found" errors). Django sends emails about 404 errors when:
If those conditions are met, Django will email the users listed in the
:setting:`MANAGERS` setting whenever your code raises a 404 and the request has
a referer. It doesn't bother to email for 404s that don't have a referer --
-those are usually people typing in broken URLs or broken Web bots. It also
+those are usually people typing in broken URLs or broken web bots. It also
ignores 404s when the referer is equal to the requested URL, since this
-behavior is from broken Web bots too.
+behavior is from broken web bots too.
.. note::
diff --git a/docs/howto/outputting-pdf.txt b/docs/howto/outputting-pdf.txt
index 7324039a91..79bebf1f6d 100644
--- a/docs/howto/outputting-pdf.txt
+++ b/docs/howto/outputting-pdf.txt
@@ -79,7 +79,7 @@ mention:
:mimetype:`application/octet-stream` binary content.
* When ``as_attachment=True`` is passed to ``FileResponse``, it sets the
- appropriate ``Content-Disposition`` header and that tells Web browsers to
+ appropriate ``Content-Disposition`` header and that tells web browsers to
pop-up a dialog box prompting/confirming how to handle the document even if a
default is set on the machine. If the ``as_attachment`` parameter is omitted,
browsers will handle the PDF using whatever program/plugin they've been
diff --git a/docs/howto/static-files/deployment.txt b/docs/howto/static-files/deployment.txt
index c1421d8244..49ac738b29 100644
--- a/docs/howto/static-files/deployment.txt
+++ b/docs/howto/static-files/deployment.txt
@@ -44,7 +44,7 @@ multiple web servers.
Serving static files from a dedicated server
--------------------------------------------
-Most larger Django sites use a separate Web server -- i.e., one that's not also
+Most larger Django sites use a separate web server -- i.e., one that's not also
running Django -- for serving static files. This server often runs a different
type of web server -- faster but less full-featured. Some common choices are:
@@ -75,7 +75,7 @@ Serving static files from a cloud service or CDN
Another common tactic is to serve static files from a cloud storage provider
like Amazon's S3 and/or a CDN (content delivery network). This lets you
ignore the problems of serving static files and can often make for
-faster-loading Web pages (especially when using a CDN).
+faster-loading web pages (especially when using a CDN).
When using these services, the basic workflow would look a bit like the above,
except that instead of using ``rsync`` to transfer your static files to the
diff --git a/docs/index.txt b/docs/index.txt
index 9e8a3fdfd6..bbf237bb59 100644
--- a/docs/index.txt
+++ b/docs/index.txt
@@ -52,7 +52,7 @@ Django has a lot of documentation. A high-level overview of how it's organized
will help you know where to look for certain things:
* :doc:`Tutorials ` take you by the hand through a series of
- steps to create a Web application. Start here if you're new to Django or Web
+ steps to create a web application. Start here if you're new to Django or web
application development. Also look at the ":ref:`index-first-steps`".
* :doc:`Topic guides ` discuss key topics and concepts at a
@@ -70,7 +70,7 @@ The model layer
===============
Django provides an abstraction layer (the "models") for structuring and
-manipulating the data of your Web application. Learn more about it below:
+manipulating the data of your web application. Learn more about it below:
* **Models:**
:doc:`Introduction to models ` |
@@ -241,7 +241,7 @@ most popular features:
Security
========
-Security is a topic of paramount importance in the development of Web
+Security is a topic of paramount importance in the development of web
applications and Django provides multiple protection tools and mechanisms:
* :doc:`Security overview `
@@ -261,7 +261,7 @@ regions:
* :doc:`Overview ` |
:doc:`Internationalization ` |
:ref:`Localization ` |
- :doc:`Localized Web UI formatting and form input `
+ :doc:`Localized web UI formatting and form input `
* :doc:`Time zones `
Performance and optimization
@@ -276,13 +276,13 @@ Geographic framework
====================
:doc:`GeoDjango ` intends to be a world-class geographic
-Web framework. Its goal is to make it as easy as possible to build GIS Web
+web framework. Its goal is to make it as easy as possible to build GIS web
applications and harness the power of spatially enabled data.
-Common Web application tools
+Common web application tools
============================
-Django offers multiple tools commonly needed in the development of Web
+Django offers multiple tools commonly needed in the development of web
applications:
* **Authentication:**
diff --git a/docs/internals/contributing/index.txt b/docs/internals/contributing/index.txt
index c933fff44e..f798cae5e7 100644
--- a/docs/internals/contributing/index.txt
+++ b/docs/internals/contributing/index.txt
@@ -35,7 +35,7 @@ If you think working *with* Django is fun, wait until you start working *on*
it. Really, **ANYONE** can do something to help make Django better and greater!
This contributing guide contains everything you need to know to help build the
-Django Web framework. Browse the following sections to find out how:
+Django web framework. Browse the following sections to find out how:
.. toctree::
:maxdepth: 2
diff --git a/docs/internals/contributing/writing-code/unit-tests.txt b/docs/internals/contributing/writing-code/unit-tests.txt
index 1d38d4f429..bb248a68cf 100644
--- a/docs/internals/contributing/writing-code/unit-tests.txt
+++ b/docs/internals/contributing/writing-code/unit-tests.txt
@@ -36,7 +36,7 @@ Next, clone your fork, install some requirements, and run the tests:
Installing the requirements will likely require some operating system packages
that your computer doesn't have installed. You can usually figure out which
-package to install by doing a Web search for the last line or so of the error
+package to install by doing a web search for the last line or so of the error
message. Try adding your operating system to the search query if needed.
If you have trouble installing the requirements, you can skip that step. See
@@ -246,7 +246,7 @@ labels.
Running the Selenium tests
--------------------------
-Some tests require Selenium and a Web browser. To run these tests, you must
+Some tests require Selenium and a web browser. To run these tests, you must
install the selenium_ package and run the tests with the
``--selenium=`` option. For example, if you have Firefox and Google
Chrome installed:
@@ -302,7 +302,7 @@ like so:
If you encounter an error during the installation, your system might be missing
a dependency for one or more of the Python packages. Consult the failing
-package's documentation or search the Web with the error message that you
+package's documentation or search the web with the error message that you
encounter.
You can also install the database adapter(s) of your choice using
diff --git a/docs/internals/contributing/writing-documentation.txt b/docs/internals/contributing/writing-documentation.txt
index 33114c98ef..e409b7fcc7 100644
--- a/docs/internals/contributing/writing-documentation.txt
+++ b/docs/internals/contributing/writing-documentation.txt
@@ -160,8 +160,7 @@ documentation:
* **subclass** -- it's a single word without a hyphen, both as a verb
("subclass that model") and as a noun ("create a subclass").
-* **Web**, **World Wide Web**, **the Web** -- note Web is always
- capitalized when referring to the World Wide Web.
+* **the web**, **web framework** -- it's not capitalized.
* **website** -- use one word, without capitalization.
diff --git a/docs/internals/organization.txt b/docs/internals/organization.txt
index 9260077cb1..8b908c29c7 100644
--- a/docs/internals/organization.txt
+++ b/docs/internals/organization.txt
@@ -7,7 +7,7 @@ Principles
The Django Project is managed by a team of volunteers pursuing three goals:
-- Driving the development of the Django Web Framework,
+- Driving the development of the Django web framework,
- Fostering the ecosystem of Django-related software,
- Leading the Django community in accordance with the values described in the
`Django Code of Conduct`_.
@@ -132,7 +132,7 @@ Role
The technical board is a group of experienced and active committers who steer
technical choices. Their main concern is to maintain the quality and stability
-of the Django Web Framework.
+of the Django web framework.
Prerogatives
------------
diff --git a/docs/intro/contributing.txt b/docs/intro/contributing.txt
index 4a1dacf50a..2996ca29ad 100644
--- a/docs/intro/contributing.txt
+++ b/docs/intro/contributing.txt
@@ -208,7 +208,7 @@ Django ``tests/`` directory and then running:
If you encounter an error during the installation, your system might be missing
a dependency for one or more of the Python packages. Consult the failing
-package's documentation or search the Web with the error message that you
+package's documentation or search the web with the error message that you
encounter.
Now we are ready to run the test suite. If you're using GNU/Linux, macOS, or
diff --git a/docs/intro/index.txt b/docs/intro/index.txt
index f52c04e8cf..29462c6f9b 100644
--- a/docs/intro/index.txt
+++ b/docs/intro/index.txt
@@ -2,7 +2,7 @@
Getting started
===============
-New to Django? Or to Web development in general? Well, you came to the right
+New to Django? Or to web development in general? Well, you came to the right
place: read this material to quickly get up and running.
.. toctree::
diff --git a/docs/intro/install.txt b/docs/intro/install.txt
index 2e67b9a9aa..6f67f6c728 100644
--- a/docs/intro/install.txt
+++ b/docs/intro/install.txt
@@ -10,7 +10,7 @@ while you walk through the introduction.
Install Python
==============
-Being a Python Web framework, Django requires Python. See
+Being a Python web framework, Django requires Python. See
:ref:`faq-python-version-support` for details. Python includes a lightweight
database called SQLite_ so you won't need to set up a database just yet.
diff --git a/docs/intro/overview.txt b/docs/intro/overview.txt
index c0d528527f..b28c1af285 100644
--- a/docs/intro/overview.txt
+++ b/docs/intro/overview.txt
@@ -3,8 +3,8 @@ Django at a glance
==================
Because Django was developed in a fast-paced newsroom environment, it was
-designed to make common Web-development tasks fast and easy. Here's an informal
-overview of how to write a database-driven Web app with Django.
+designed to make common web development tasks fast and easy. Here's an informal
+overview of how to write a database-driven web app with Django.
The goal of this document is to give you enough technical specifics to
understand how Django works, but this isn't intended to be a tutorial or
@@ -176,7 +176,7 @@ start populating data. Then, develop the way data is presented to the public.
Design your URLs
================
-A clean, elegant URL scheme is an important detail in a high-quality Web
+A clean, elegant URL scheme is an important detail in a high-quality web
application. Django encourages beautiful URL design and doesn't put any cruft
in URLs, like ``.php`` or ``.asp``.
diff --git a/docs/intro/reusable-apps.txt b/docs/intro/reusable-apps.txt
index 8c1bf7827c..5aeedae035 100644
--- a/docs/intro/reusable-apps.txt
+++ b/docs/intro/reusable-apps.txt
@@ -3,7 +3,7 @@ Advanced tutorial: How to write reusable apps
=============================================
This advanced tutorial begins where :doc:`Tutorial 7 `
-left off. We'll be turning our Web-poll into a standalone Python package
+left off. We'll be turning our web-poll into a standalone Python package
you can reuse in new projects and share with other people.
If you haven't recently completed Tutorials 1–7, we encourage you to review
@@ -150,7 +150,7 @@ this. For a small app like polls, this process isn't too difficult.
Polls
=====
- Polls is a Django app to conduct Web-based polls. For each question,
+ Polls is a Django app to conduct web-based polls. For each question,
visitors can choose between a fixed number of answers.
Detailed documentation is in the "docs" directory.
@@ -204,7 +204,7 @@ this. For a small app like polls, this process isn't too difficult.
[metadata]
name = django-polls
version = 0.1
- description = A Django app to conduct Web-based polls.
+ description = A Django app to conduct web-based polls.
long_description = file: README.rst
url = https://www.example.com/
author = Your Name
diff --git a/docs/intro/tutorial01.txt b/docs/intro/tutorial01.txt
index c2bfcd80c4..368760dfb8 100644
--- a/docs/intro/tutorial01.txt
+++ b/docs/intro/tutorial01.txt
@@ -67,11 +67,11 @@ work, see :ref:`troubleshooting-django-admin`.
.. admonition:: Where should this code live?
If your background is in plain old PHP (with no use of modern frameworks),
- you're probably used to putting code under the Web server's document root
+ you're probably used to putting code under the web server's document root
(in a place such as ``/var/www``). With Django, you don't do that. It's
- not a good idea to put any of this Python code within your Web server's
+ not a good idea to put any of this Python code within your web server's
document root, because it risks the possibility that people may be able
- to view your code over the Web. That's not good for security.
+ to view your code over the web. That's not good for security.
Put your code in some directory **outside** of the document root, such as
:file:`/home/mycode`.
@@ -148,16 +148,16 @@ You'll see the following output on the command line:
Ignore the warning about unapplied database migrations for now; we'll deal
with the database shortly.
-You've started the Django development server, a lightweight Web server written
+You've started the Django development server, a lightweight web server written
purely in Python. We've included this with Django so you can develop things
rapidly, without having to deal with configuring a production server -- such as
Apache -- until you're ready for production.
Now's a good time to note: **don't** use this server in anything resembling a
production environment. It's intended only for use while developing. (We're in
-the business of making Web frameworks, not Web servers.)
+the business of making web frameworks, not web servers.)
-Now that the server's running, visit http://127.0.0.1:8000/ with your Web
+Now that the server's running, visit http://127.0.0.1:8000/ with your web
browser. You'll see a "Congratulations!" page, with a rocket taking off.
It worked!
@@ -206,8 +206,8 @@ rather than creating directories.
.. admonition:: Projects vs. apps
- What's the difference between a project and an app? An app is a Web
- application that does something -- e.g., a Weblog system, a database of
+ What's the difference between a project and an app? An app is a web
+ application that does something -- e.g., a blog system, a database of
public records or a small poll app. A project is a collection of
configuration and apps for a particular website. A project can contain
multiple apps. An app can be in multiple projects.
diff --git a/docs/intro/tutorial02.txt b/docs/intro/tutorial02.txt
index 8ee3ec8159..2163a87f5b 100644
--- a/docs/intro/tutorial02.txt
+++ b/docs/intro/tutorial02.txt
@@ -613,7 +613,7 @@ If the server is not running start it like so:
$ python manage.py runserver
-Now, open a Web browser and go to "/admin/" on your local domain -- e.g.,
+Now, open a web browser and go to "/admin/" on your local domain -- e.g.,
http://127.0.0.1:8000/admin/. You should see the admin's login screen:
.. image:: _images/admin01.png
diff --git a/docs/intro/tutorial03.txt b/docs/intro/tutorial03.txt
index 1fc72d3e79..8c2bf36725 100644
--- a/docs/intro/tutorial03.txt
+++ b/docs/intro/tutorial03.txt
@@ -3,7 +3,7 @@ Writing your first Django app, part 3
=====================================
This tutorial begins where :doc:`Tutorial 2 ` left off. We're
-continuing the Web-poll application and will focus on creating the public
+continuing the web-poll application and will focus on creating the public
interface -- "views."
.. admonition:: Where to get help:
@@ -14,7 +14,7 @@ interface -- "views."
Overview
========
-A view is a "type" of Web page in your Django application that generally serves
+A view is a "type" of web page in your Django application that generally serves
a specific function and has a specific template. For example, in a blog
application, you might have the following views:
diff --git a/docs/intro/tutorial04.txt b/docs/intro/tutorial04.txt
index 4dae8892ae..f388166c44 100644
--- a/docs/intro/tutorial04.txt
+++ b/docs/intro/tutorial04.txt
@@ -3,7 +3,7 @@ Writing your first Django app, part 4
=====================================
This tutorial begins where :doc:`Tutorial 3 ` left off. We're
-continuing the Web-poll application and will focus on form processing and
+continuing the web-poll application and will focus on form processing and
cutting down our code.
.. admonition:: Where to get help:
@@ -47,7 +47,7 @@ A quick rundown:
``method="get"``) is very important, because the act of submitting this
form will alter data server-side. Whenever you create a form that alters
data server-side, use ``method="post"``. This tip isn't specific to
- Django; it's good Web development practice in general.
+ Django; it's good web development practice in general.
* ``forloop.counter`` indicates how many times the :ttag:`for` tag has gone
through its loop
@@ -126,7 +126,7 @@ This code includes a few things we haven't covered yet in this tutorial:
As the Python comment above points out, you should always return an
:class:`~django.http.HttpResponseRedirect` after successfully dealing with
- POST data. This tip isn't specific to Django; it's good Web development
+ POST data. This tip isn't specific to Django; it's good web development
practice in general.
* We are using the :func:`~django.urls.reverse` function in the
@@ -204,7 +204,7 @@ The ``detail()`` (from :doc:`Tutorial 3 `) and ``results()``
views are very short -- and, as mentioned above, redundant. The ``index()``
view, which displays a list of polls, is similar.
-These views represent a common case of basic Web development: getting data from
+These views represent a common case of basic web development: getting data from
the database according to a parameter passed in the URL, loading a template and
returning the rendered template. Because this is so common, Django provides a
shortcut, called the "generic views" system.
diff --git a/docs/intro/tutorial05.txt b/docs/intro/tutorial05.txt
index d7f6334324..0e4c4dc098 100644
--- a/docs/intro/tutorial05.txt
+++ b/docs/intro/tutorial05.txt
@@ -3,7 +3,7 @@ Writing your first Django app, part 5
=====================================
This tutorial begins where :doc:`Tutorial 4 ` left off.
-We've built a Web-poll application, and we'll now create some automated tests
+We've built a web-poll application, and we'll now create some automated tests
for it.
.. admonition:: Where to get help:
diff --git a/docs/intro/tutorial06.txt b/docs/intro/tutorial06.txt
index be69f5e162..c3df546cae 100644
--- a/docs/intro/tutorial06.txt
+++ b/docs/intro/tutorial06.txt
@@ -3,7 +3,7 @@ Writing your first Django app, part 6
=====================================
This tutorial begins where :doc:`Tutorial 5 ` left off.
-We've built a tested Web-poll application, and we'll now add a stylesheet and
+We've built a tested web-poll application, and we'll now add a stylesheet and
an image.
Aside from the HTML generated by the server, web applications generally need
diff --git a/docs/intro/tutorial07.txt b/docs/intro/tutorial07.txt
index f80b6fc6c3..9f6c775267 100644
--- a/docs/intro/tutorial07.txt
+++ b/docs/intro/tutorial07.txt
@@ -3,7 +3,7 @@ Writing your first Django app, part 7
=====================================
This tutorial begins where :doc:`Tutorial 6 ` left off. We're
-continuing the Web-poll application and will focus on customizing Django's
+continuing the web-poll application and will focus on customizing Django's
automatically-generated admin site that we first explored in :doc:`Tutorial 2
`.
diff --git a/docs/intro/whatsnext.txt b/docs/intro/whatsnext.txt
index e17110eeb6..254a0c5eaf 100644
--- a/docs/intro/whatsnext.txt
+++ b/docs/intro/whatsnext.txt
@@ -36,7 +36,7 @@ Django's main documentation is broken up into "chunks" designed to fill
different needs:
* The :doc:`introductory material ` is designed for people new
- to Django -- or to Web development in general. It doesn't cover anything
+ to Django -- or to web development in general. It doesn't cover anything
in depth, but instead gives a high-level overview of how developing in
Django "feels".
@@ -106,7 +106,7 @@ Where to get it
You can read Django documentation in several ways. They are, in order of
preference:
-On the Web
+On the web
----------
The most recent version of the Django documentation lives at
@@ -215,8 +215,8 @@ We follow this policy:
Django is :ref:`no longer supported`, that version
of the docs won't get any further updates.
-* The `main documentation Web page`_ includes links to documentation for
+* The `main documentation web page`_ includes links to documentation for
previous versions. Be sure you are using the version of the docs
corresponding to the version of Django you are using!
-.. _main documentation Web page: https://docs.djangoproject.com/en/dev/
+.. _main documentation web page: https://docs.djangoproject.com/en/dev/
diff --git a/docs/misc/design-philosophies.txt b/docs/misc/design-philosophies.txt
index 8c0cac554e..207685d556 100644
--- a/docs/misc/design-philosophies.txt
+++ b/docs/misc/design-philosophies.txt
@@ -20,7 +20,7 @@ A fundamental goal of Django's stack is `loose coupling and tight cohesion`_.
The various layers of the framework shouldn't "know" about each other unless
absolutely necessary.
-For example, the template system knows nothing about Web requests, the database
+For example, the template system knows nothing about web requests, the database
layer knows nothing about data display and the view system doesn't care which
template system a programmer uses.
@@ -43,8 +43,8 @@ introspection.
Quick development
-----------------
-The point of a Web framework in the 21st century is to make the tedious aspects
-of Web development fast. Django should allow for incredibly quick Web
+The point of a web framework in the 21st century is to make the tedious aspects
+of web development fast. Django should allow for incredibly quick web
development.
.. _dry:
@@ -173,7 +173,7 @@ Encourage best practices
The framework should make it just as easy (or even easier) for a developer to
design pretty URLs than ugly ones.
-File extensions in Web-page URLs should be avoided.
+File extensions in web-page URLs should be avoided.
Vignette-style commas in URLs deserve severe punishment.
@@ -185,7 +185,7 @@ Definitive URLs
.. index:: urls; definitive
Technically, ``foo.com/bar`` and ``foo.com/bar/`` are two different URLs, and
-search-engine robots (and some Web traffic-analyzing tools) would treat them as
+search-engine robots (and some web traffic-analyzing tools) would treat them as
separate pages. Django should make an effort to "normalize" URLs so that
search-engine robots don't get confused.
diff --git a/docs/ref/contrib/auth.txt b/docs/ref/contrib/auth.txt
index 6bcdf5e099..c15ff5f6eb 100644
--- a/docs/ref/contrib/auth.txt
+++ b/docs/ref/contrib/auth.txt
@@ -334,7 +334,7 @@ Manager methods
In practice, you probably won't need to use
:class:`~django.contrib.auth.models.AnonymousUser` objects on your own, but
-they're used by Web requests, as explained in the next section.
+they're used by web requests, as explained in the next section.
``Permission`` model
====================
diff --git a/docs/ref/contrib/gis/geos.txt b/docs/ref/contrib/gis/geos.txt
index 0bd3c5f8b7..8a45897c31 100644
--- a/docs/ref/contrib/gis/geos.txt
+++ b/docs/ref/contrib/gis/geos.txt
@@ -87,7 +87,7 @@ Finally, there is the :func:`fromfile` factory method which returns a
.. admonition:: My logs are filled with GEOS-related errors
You find many ``TypeError`` or ``AttributeError`` exceptions filling your
- Web server's log files. This generally means that you are creating GEOS
+ web server's log files. This generally means that you are creating GEOS
objects at the top level of some of your Python modules. Then, due to a race
condition in the garbage collector, your module is garbage collected before
the GEOS object. To prevent this, create :class:`GEOSGeometry` objects
diff --git a/docs/ref/contrib/gis/index.txt b/docs/ref/contrib/gis/index.txt
index 24d9172841..cee2f93679 100644
--- a/docs/ref/contrib/gis/index.txt
+++ b/docs/ref/contrib/gis/index.txt
@@ -5,8 +5,8 @@ GeoDjango
.. module:: django.contrib.gis
:synopsis: Geographic Information System (GIS) extensions for Django
-GeoDjango intends to be a world-class geographic Web framework. Its goal is to
-make it as easy as possible to build GIS Web applications and harness the power
+GeoDjango intends to be a world-class geographic web framework. Its goal is to
+make it as easy as possible to build GIS web applications and harness the power
of spatially enabled data.
.. toctree::
diff --git a/docs/ref/contrib/gis/model-api.txt b/docs/ref/contrib/gis/model-api.txt
index 8ad7cd8772..cd531ce785 100644
--- a/docs/ref/contrib/gis/model-api.txt
+++ b/docs/ref/contrib/gis/model-api.txt
@@ -123,7 +123,7 @@ corresponds to the projection system that will be used to interpret the data
in the spatial database. [#fnsrid]_ Projection systems give the context to the
coordinates that specify a location. Although the details of `geodesy`__ are
beyond the scope of this documentation, the general problem is that the earth
-is spherical and representations of the earth (e.g., paper maps, Web maps)
+is spherical and representations of the earth (e.g., paper maps, web maps)
are not.
Most people are familiar with using latitude and longitude to reference a
diff --git a/docs/ref/contrib/gis/tutorial.txt b/docs/ref/contrib/gis/tutorial.txt
index d772d2e76d..82c3c93854 100644
--- a/docs/ref/contrib/gis/tutorial.txt
+++ b/docs/ref/contrib/gis/tutorial.txt
@@ -6,8 +6,8 @@ Introduction
============
GeoDjango is an included contrib module for Django that turns it into a
-world-class geographic Web framework. GeoDjango strives to make it as simple
-as possible to create geographic Web applications, like location-based services.
+world-class geographic web framework. GeoDjango strives to make it as simple
+as possible to create geographic web applications, like location-based services.
Its features include:
* Django model fields for `OGC`_ geometries and raster data.
diff --git a/docs/ref/contrib/gis/utils.txt b/docs/ref/contrib/gis/utils.txt
index d7c82a248e..614308d41f 100644
--- a/docs/ref/contrib/gis/utils.txt
+++ b/docs/ref/contrib/gis/utils.txt
@@ -6,7 +6,7 @@ GeoDjango Utilities
:synopsis: GeoDjango's collection of utilities.
The :mod:`django.contrib.gis.utils` module contains various utilities that are
-useful in creating geospatial Web applications.
+useful in creating geospatial web applications.
.. toctree::
:maxdepth: 2
diff --git a/docs/ref/contrib/index.txt b/docs/ref/contrib/index.txt
index 1890b35cf6..8a9a90e5e8 100644
--- a/docs/ref/contrib/index.txt
+++ b/docs/ref/contrib/index.txt
@@ -4,7 +4,7 @@
Django aims to follow Python's :ref:`"batteries included" philosophy
`. It ships with a variety of extra, optional tools
-that solve common Web-development problems.
+that solve common web development problems.
This code lives in ``django/contrib`` in the Django distribution. This document
gives a rundown of the packages in ``contrib``, along with any dependencies
diff --git a/docs/ref/contrib/sitemaps.txt b/docs/ref/contrib/sitemaps.txt
index 51cd78aafe..709a3679a4 100644
--- a/docs/ref/contrib/sitemaps.txt
+++ b/docs/ref/contrib/sitemaps.txt
@@ -79,7 +79,7 @@ a :class:`~django.contrib.sitemaps.Sitemap` class (e.g.,
A :class:`~django.contrib.sitemaps.Sitemap` class is a Python class that
represents a "section" of entries in your sitemap. For example, one
:class:`~django.contrib.sitemaps.Sitemap` class could represent all the entries
-of your Weblog, while another could represent all of the events in your events
+of your blog, while another could represent all of the events in your events
calendar.
In the simplest case, all these sections get lumped together into one
diff --git a/docs/ref/contrib/sites.txt b/docs/ref/contrib/sites.txt
index 30d21b17f4..ea9e211964 100644
--- a/docs/ref/contrib/sites.txt
+++ b/docs/ref/contrib/sites.txt
@@ -174,7 +174,7 @@ Getting the current domain for display
LJWorld.com and Lawrence.com both have email alert functionality, which lets
readers sign up to get notifications when news happens. It's pretty basic: A
-reader signs up on a Web form and immediately gets an email saying,
+reader signs up on a web form and immediately gets an email saying,
"Thanks for your subscription."
It'd be inefficient and redundant to implement this sign up processing code
diff --git a/docs/ref/contrib/syndication.txt b/docs/ref/contrib/syndication.txt
index a268bad8cc..c71cd53a99 100644
--- a/docs/ref/contrib/syndication.txt
+++ b/docs/ref/contrib/syndication.txt
@@ -13,7 +13,7 @@ To create any syndication feed, all you have to do is write a short
Python class. You can create as many feeds as you want.
Django also comes with a lower-level feed-generating API. Use this if
-you want to generate feeds outside of a Web context, or in some other
+you want to generate feeds outside of a web context, or in some other
lower-level way.
.. _RSS: https://developer.mozilla.org/en-US/docs/Glossary/RSS
@@ -1014,7 +1014,7 @@ For example, to create an Atom 1.0 feed and print it to standard output::
>>> from django.utils import feedgenerator
>>> from datetime import datetime
>>> f = feedgenerator.Atom1Feed(
- ... title="My Weblog",
+ ... title="My Blog",
... link="https://www.example.com/",
... description="In which I write about what I ate today.",
... language="en",
diff --git a/docs/ref/django-admin.txt b/docs/ref/django-admin.txt
index 89d945500d..4af510731f 100644
--- a/docs/ref/django-admin.txt
+++ b/docs/ref/django-admin.txt
@@ -918,7 +918,7 @@ detected.
.. django-admin:: runserver [addrport]
-Starts a lightweight development Web server on the local machine. By default,
+Starts a lightweight development web server on the local machine. By default,
the server runs on port 8000 on the IP address ``127.0.0.1``. You can pass in an
IP address and port number explicitly.
@@ -931,7 +931,7 @@ This server uses the WSGI application object specified by the
DO NOT USE THIS SERVER IN A PRODUCTION SETTING. It has not gone through
security audits or performance tests. (And that's how it's gonna stay. We're in
-the business of making Web frameworks, not Web servers, so improving this
+the business of making web frameworks, not web servers, so improving this
server to be able to handle a production environment is outside the scope of
Django.)
@@ -1580,12 +1580,12 @@ This is useful in a number of ways:
* When you're writing :doc:`unit tests ` of how your views
act with certain fixture data, you can use ``testserver`` to interact with
- the views in a Web browser, manually.
+ the views in a web browser, manually.
* Let's say you're developing your Django application and have a "pristine"
copy of a database that you'd like to interact with. You can dump your
database to a fixture (using the :djadmin:`dumpdata` command, explained
- above), then use ``testserver`` to run your Web application with that data.
+ above), then use ``testserver`` to run your web application with that data.
With this arrangement, you have the flexibility of messing up your data
in any way, knowing that whatever data changes you're making are only
being made to a test database.
diff --git a/docs/ref/forms/widgets.txt b/docs/ref/forms/widgets.txt
index 802ba0055e..f5d42154e6 100644
--- a/docs/ref/forms/widgets.txt
+++ b/docs/ref/forms/widgets.txt
@@ -111,7 +111,7 @@ Customizing widget instances
When Django renders a widget as HTML, it only renders very minimal markup -
Django doesn't add class names, or any other widget-specific attributes. This
means, for example, that all :class:`TextInput` widgets will appear the same
-on your Web pages.
+on your web pages.
There are two ways to customize widgets: :ref:`per widget instance
` and :ref:`per widget class `.
@@ -145,7 +145,7 @@ provided for each widget will be rendered exactly the same::
Url:
Comment:
-On a real Web page, you probably don't want every widget to look the same. You
+On a real web page, you probably don't want every widget to look the same. You
might want a larger input element for the comment, and you might want the
'name' widget to have some special CSS class. It is also possible to specify
the 'type' attribute to take advantage of the new HTML5 input types. To do
diff --git a/docs/ref/logging.txt b/docs/ref/logging.txt
index 7fdb7791f5..6b8e12ef46 100644
--- a/docs/ref/logging.txt
+++ b/docs/ref/logging.txt
@@ -275,7 +275,7 @@ Python logging module `.
The ``include_html`` argument of ``AdminEmailHandler`` is used to
control whether the traceback email includes an HTML attachment
- containing the full content of the debug Web page that would have been
+ containing the full content of the debug web page that would have been
produced if :setting:`DEBUG` were ``True``. To set this value in your
configuration, include it in the handler definition for
``django.utils.log.AdminEmailHandler``, like this::
diff --git a/docs/ref/middleware.txt b/docs/ref/middleware.txt
index d8eb889300..412f8a99a4 100644
--- a/docs/ref/middleware.txt
+++ b/docs/ref/middleware.txt
@@ -185,7 +185,7 @@ Security middleware
.. warning::
If your deployment situation allows, it's usually a good idea to have your
- front-end Web server perform the functionality provided by the
+ front-end web server perform the functionality provided by the
``SecurityMiddleware``. That way, if there are requests that aren't served
by Django (such as static media or user-uploaded files), they will have
the same protections as requests to your Django application.
@@ -222,7 +222,7 @@ you set the :setting:`SECURE_HSTS_SECONDS` setting to a non-zero integer value.
When enabling HSTS, it's a good idea to first use a small value for testing,
for example, :setting:`SECURE_HSTS_SECONDS = 3600` for one
-hour. Each time a Web browser sees the HSTS header from your site, it will
+hour. Each time a web browser sees the HSTS header from your site, it will
refuse to communicate non-securely (using HTTP) with your domain for the given
period of time. Once you confirm that all assets are served securely on your
site (i.e. HSTS didn't break anything), it's a good idea to increase this value
@@ -413,10 +413,10 @@ is ``True``.
Note that in most deployment situations where Django isn't involved in serving
user-uploaded files, this setting won't help you. For example, if your
-:setting:`MEDIA_URL` is served directly by your front-end Web server (nginx,
+:setting:`MEDIA_URL` is served directly by your front-end web server (nginx,
Apache, etc.) then you'd want to set this header there. On the other hand, if
you are using Django to do something like require authorization in order to
-download files and you cannot set the header using your Web server, this
+download files and you cannot set the header using your web server, this
setting will be useful.
__ https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options
@@ -486,17 +486,17 @@ Authentication middleware
.. class:: AuthenticationMiddleware
Adds the ``user`` attribute, representing the currently-logged-in user, to
-every incoming ``HttpRequest`` object. See :ref:`Authentication in Web requests
+every incoming ``HttpRequest`` object. See :ref:`Authentication in web requests
`.
.. class:: RemoteUserMiddleware
-Middleware for utilizing Web server provided authentication. See
+Middleware for utilizing web server provided authentication. See
:doc:`/howto/auth-remote-user` for usage details.
.. class:: PersistentRemoteUserMiddleware
-Middleware for utilizing Web server provided authentication when enabled only
+Middleware for utilizing web server provided authentication when enabled only
on the login page. See :ref:`persistent-remote-user-middleware-howto` for usage
details.
diff --git a/docs/ref/models/fields.txt b/docs/ref/models/fields.txt
index 9847560504..d7336d7001 100644
--- a/docs/ref/models/fields.txt
+++ b/docs/ref/models/fields.txt
@@ -857,7 +857,7 @@ takes a few steps:
full path to a directory where you'd like Django to store uploaded files.
(For performance, these files are not stored in the database.) Define
:setting:`MEDIA_URL` as the base public URL of that directory. Make sure
- that this directory is writable by the Web server's user account.
+ that this directory is writable by the web server's user account.
#. Add the :class:`FileField` or :class:`ImageField` to your model, defining
the :attr:`~FileField.upload_to` option to specify a subdirectory of
@@ -900,7 +900,7 @@ Note that whenever you deal with uploaded files, you should pay close attention
to where you're uploading them and what type of files they are, to avoid
security holes. *Validate all uploaded files* so that you're sure the files are
what you think they are. For example, if you blindly let somebody upload files,
-without validation, to a directory that's within your Web server's document
+without validation, to a directory that's within your web server's document
root, then somebody could upload a CGI or PHP script and execute that script by
visiting its URL on your site. Don't allow that.
diff --git a/docs/ref/models/instances.txt b/docs/ref/models/instances.txt
index 6cf861638b..ea503b6c26 100644
--- a/docs/ref/models/instances.txt
+++ b/docs/ref/models/instances.txt
@@ -9,7 +9,7 @@ material presented in the :doc:`model ` and :doc:`database
query ` guides, so you'll probably want to read and
understand those documents before reading this one.
-Throughout this reference we'll use the :ref:`example Weblog models
+Throughout this reference we'll use the :ref:`example blog models
` presented in the :doc:`database query guide
`.
diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt
index efa28ee145..4dafa7b3bf 100644
--- a/docs/ref/models/querysets.txt
+++ b/docs/ref/models/querysets.txt
@@ -9,7 +9,7 @@ material presented in the :doc:`model ` and :doc:`database
query ` guides, so you'll probably want to read and
understand those documents before reading this one.
-Throughout this reference we'll use the :ref:`example Weblog models
+Throughout this reference we'll use the :ref:`example blog models
` presented in the :doc:`database query guide
`.
@@ -2685,7 +2685,7 @@ For example, to delete all the entries in a particular blog::
# Delete all the entries belonging to this Blog.
>>> Entry.objects.filter(blog=b).delete()
- (4, {'weblog.Entry': 2, 'weblog.Entry_authors': 2})
+ (4, {'blog.Entry': 2, 'blog.Entry_authors': 2})
By default, Django's :class:`~django.db.models.ForeignKey` emulates the SQL
constraint ``ON DELETE CASCADE`` — in other words, any objects with foreign
@@ -2696,7 +2696,7 @@ For example::
# This will delete all Blogs and all of their Entry objects.
>>> blogs.delete()
- (5, {'weblog.Blog': 1, 'weblog.Entry': 2, 'weblog.Entry_authors': 2})
+ (5, {'blog.Blog': 1, 'blog.Entry': 2, 'blog.Entry_authors': 2})
This cascade behavior is customizable via the
:attr:`~django.db.models.ForeignKey.on_delete` argument to the
diff --git a/docs/ref/request-response.txt b/docs/ref/request-response.txt
index 747cb0ea6b..5da858720b 100644
--- a/docs/ref/request-response.txt
+++ b/docs/ref/request-response.txt
@@ -57,10 +57,10 @@ All attributes should be considered read-only, unless stated otherwise.
.. attribute:: HttpRequest.path_info
- Under some Web server configurations, the portion of the URL after the
+ Under some web server configurations, the portion of the URL after the
host name is split up into a script prefix portion and a path info
portion. The ``path_info`` attribute always contains the path info portion
- of the path, no matter what Web server is being used. Using this instead
+ of the path, no matter what web server is being used. Using this instead
of :attr:`~HttpRequest.path` can make your code easier to move between
test and deployment servers.
@@ -151,7 +151,7 @@ All attributes should be considered read-only, unless stated otherwise.
* ``QUERY_STRING`` -- The query string, as a single (unparsed) string.
* ``REMOTE_ADDR`` -- The IP address of the client.
* ``REMOTE_HOST`` -- The hostname of the client.
- * ``REMOTE_USER`` -- The user authenticated by the Web server, if any.
+ * ``REMOTE_USER`` -- The user authenticated by the web server, if any.
* ``REQUEST_METHOD`` -- A string such as ``"GET"`` or ``"POST"``.
* ``SERVER_NAME`` -- The hostname of the server.
* ``SERVER_PORT`` -- The port of the server (as a string).
@@ -167,7 +167,7 @@ All attributes should be considered read-only, unless stated otherwise.
name, so you won't see them in ``META``. This prevents header-spoofing
based on ambiguity between underscores and dashes both being normalizing to
underscores in WSGI environment variables. It matches the behavior of
- Web servers like Nginx and Apache 2.4+.
+ web servers like Nginx and Apache 2.4+.
:attr:`HttpRequest.headers` is a simpler way to access all HTTP-prefixed
headers, plus ``CONTENT_LENGTH`` and ``CONTENT_TYPE``.
@@ -365,7 +365,7 @@ Methods
Mixing HTTP and HTTPS on the same site is discouraged, therefore
:meth:`~HttpRequest.build_absolute_uri()` will always generate an
absolute URI with the same scheme the current request has. If you need
- to redirect users to HTTPS, it's best to let your Web server redirect
+ to redirect users to HTTPS, it's best to let your web server redirect
all HTTP traffic to HTTPS.
.. method:: HttpRequest.get_signed_cookie(key, default=RAISE_ERROR, salt='', max_age=None)
@@ -662,7 +662,7 @@ Typical usage is to pass the contents of the page, as a string, bytestring,
or :class:`memoryview`, to the :class:`HttpResponse` constructor::
>>> from django.http import HttpResponse
- >>> response = HttpResponse("Here's the text of the Web page.")
+ >>> response = HttpResponse("Here's the text of the web page.")
>>> response = HttpResponse("Text only, please.", content_type="text/plain")
>>> response = HttpResponse(b'Bytestrings are also accepted.')
>>> response = HttpResponse(memoryview(b'Memoryview as well.'))
@@ -671,7 +671,7 @@ But if you want to add content incrementally, you can use ``response`` as a
file-like object::
>>> response = HttpResponse()
- >>> response.write("
Here's the text of the Web page.
")
+ >>> response.write("
Here's the text of the web page.
")
>>> response.write("
Here's another paragraph.
")
Passing iterators
diff --git a/docs/ref/settings.txt b/docs/ref/settings.txt
index ba2a787b53..47718a6838 100644
--- a/docs/ref/settings.txt
+++ b/docs/ref/settings.txt
@@ -33,7 +33,7 @@ a model object and return its URL. This is a way of inserting or overriding
``get_absolute_url()`` methods on a per-installation basis. Example::
ABSOLUTE_URL_OVERRIDES = {
- 'blogs.weblog': lambda o: "/blogs/%s/" % o.slug,
+ 'blogs.blog': lambda o: "/blogs/%s/" % o.slug,
'news.story': lambda o: "/stories/%s/%s/" % (o.pub_year, o.slug),
}
diff --git a/docs/ref/templates/api.txt b/docs/ref/templates/api.txt
index 01748715b7..7e9812fffb 100644
--- a/docs/ref/templates/api.txt
+++ b/docs/ref/templates/api.txt
@@ -805,7 +805,7 @@ directories::
]
Your templates can go anywhere you want, as long as the directories and
-templates are readable by the Web server. They can have any extension you want,
+templates are readable by the web server. They can have any extension you want,
such as ``.html`` or ``.txt``, or they can have no extension at all.
Note that these paths should use Unix-style forward slashes, even on Windows.
diff --git a/docs/ref/templates/language.txt b/docs/ref/templates/language.txt
index 04b363c0cf..ffddd7435a 100644
--- a/docs/ref/templates/language.txt
+++ b/docs/ref/templates/language.txt
@@ -471,10 +471,10 @@ That would result in a rendered template like this::
Hello, username
-...which, in turn, would result in the remainder of the Web page being bolded!
+...which, in turn, would result in the remainder of the web page being bolded!
Clearly, user-submitted data shouldn't be trusted blindly and inserted directly
-into your Web pages, because a malicious user could use this kind of hole to
+into your web pages, because a malicious user could use this kind of hole to
do potentially bad things. This type of security exploit is called a
`Cross Site Scripting`_ (XSS) attack.
diff --git a/docs/ref/urlresolvers.txt b/docs/ref/urlresolvers.txt
index b9af97f790..891142df7f 100644
--- a/docs/ref/urlresolvers.txt
+++ b/docs/ref/urlresolvers.txt
@@ -216,7 +216,7 @@ Normally, you should always use :func:`~django.urls.reverse` to define URLs
within your application. However, if your application constructs part of the
URL hierarchy itself, you may occasionally need to generate URLs. In that
case, you need to be able to find the base URL of the Django project within
-its Web server (normally, :func:`~django.urls.reverse` takes care of this for
+its web server (normally, :func:`~django.urls.reverse` takes care of this for
you). In that case, you can call ``get_script_prefix()``, which will return
the script prefix portion of the URL for your Django project. If your Django
project is at the root of its web server, this is always ``"/"``.
diff --git a/docs/ref/urls.txt b/docs/ref/urls.txt
index 6d0110af76..2bfb80c714 100644
--- a/docs/ref/urls.txt
+++ b/docs/ref/urls.txt
@@ -21,7 +21,7 @@ Returns an element for inclusion in ``urlpatterns``. For example::
path('bio//', views.bio, name='bio'),
path('articles//', views.article, name='article-detail'),
path('articles///', views.section, name='article-section'),
- path('weblog/', include('blog.urls')),
+ path('blog/', include('blog.urls')),
...
]
@@ -58,7 +58,7 @@ Returns an element for inclusion in ``urlpatterns``. For example::
urlpatterns = [
re_path(r'^index/$', views.index, name='index'),
re_path(r'^bio/(?P\w+)/$', views.bio, name='bio'),
- re_path(r'^weblog/', include('blog.urls')),
+ re_path(r'^blog/', include('blog.urls')),
...
]
diff --git a/docs/ref/utils.txt b/docs/ref/utils.txt
index 485009bde6..3a7f58c5f7 100644
--- a/docs/ref/utils.txt
+++ b/docs/ref/utils.txt
@@ -300,7 +300,7 @@ Sample usage::
>>> feed = feedgenerator.Rss201rev2Feed(
... title="Poynter E-Media Tidbits",
... link="http://www.poynter.org/column.asp?id=31",
- ... description="A group Weblog by the sharpest minds in online media/journalism/publishing.",
+ ... description="A group blog by the sharpest minds in online media/journalism/publishing.",
... language="en",
... )
>>> feed.add_item(
diff --git a/docs/releases/1.0.txt b/docs/releases/1.0.txt
index 6db106f4d7..69c460f7b6 100644
--- a/docs/releases/1.0.txt
+++ b/docs/releases/1.0.txt
@@ -6,7 +6,7 @@ Welcome to Django 1.0!
We've been looking forward to this moment for over three years, and it's finally
here. Django 1.0 represents the largest milestone in Django's development to
-date: a Web framework that a group of perfectionists can truly be proud of.
+date: a web framework that a group of perfectionists can truly be proud of.
Django 1.0 represents over three years of community development as an Open
Source project. Django's received contributions from hundreds of developers,
diff --git a/docs/releases/1.1.txt b/docs/releases/1.1.txt
index 21040a9e24..b9d51d6b9e 100644
--- a/docs/releases/1.1.txt
+++ b/docs/releases/1.1.txt
@@ -422,7 +422,7 @@ Other new features and changes introduced since Django 1.0 include:
notably, the memcached backend -- these operations will be atomic, and
quite fast.
-* Django now can :doc:`easily delegate authentication to the Web server
+* Django now can :doc:`easily delegate authentication to the web server
` via a new authentication backend that supports
the standard ``REMOTE_USER`` environment variable used for this purpose.
diff --git a/docs/releases/1.10.txt b/docs/releases/1.10.txt
index efad6d3cd4..eaae87f6e4 100644
--- a/docs/releases/1.10.txt
+++ b/docs/releases/1.10.txt
@@ -864,7 +864,7 @@ Miscellaneous
* The WSGI handler no longer removes content of responses from ``HEAD``
requests or responses with a ``status_code`` of 100-199, 204, or 304. Most
- Web servers already implement this behavior. Responses retrieved using the
+ web servers already implement this behavior. Responses retrieved using the
Django test client continue to have these "response fixes" applied.
* ``Model.__init__()`` now receives ``django.db.models.DEFERRED`` as the value
diff --git a/docs/releases/1.11.txt b/docs/releases/1.11.txt
index 4423c3b17b..4716307526 100644
--- a/docs/releases/1.11.txt
+++ b/docs/releases/1.11.txt
@@ -741,7 +741,7 @@ Miscellaneous
to allow including lists inside help text.
* :class:`~django.middleware.http.ConditionalGetMiddleware` no longer sets the
- ``Date`` header as Web servers set that header. It also no longer sets the
+ ``Date`` header as web servers set that header. It also no longer sets the
``Content-Length`` header as this is now done by
:class:`~django.middleware.common.CommonMiddleware`.
diff --git a/docs/releases/1.3.6.txt b/docs/releases/1.3.6.txt
index 8932939425..5d25bdacd8 100644
--- a/docs/releases/1.3.6.txt
+++ b/docs/releases/1.3.6.txt
@@ -16,10 +16,10 @@ Host header poisoning
Some parts of Django -- independent of end-user-written applications -- make
use of full URLs, including domain name, which are generated from the HTTP Host
header. Django's documentation has for some time contained notes advising users
-on how to configure Web servers to ensure that only valid Host headers can reach
+on how to configure web servers to ensure that only valid Host headers can reach
the Django application. However, it has been reported to us that even with the
-recommended Web server configurations there are still techniques available for
-tricking many common Web servers into supplying the application with an
+recommended web server configurations there are still techniques available for
+tricking many common web servers into supplying the application with an
incorrect and possibly malicious Host header.
For this reason, Django 1.3.6 adds a new setting, ``ALLOWED_HOSTS``, which
diff --git a/docs/releases/1.4.4.txt b/docs/releases/1.4.4.txt
index 979d1144f3..8e6b5b287e 100644
--- a/docs/releases/1.4.4.txt
+++ b/docs/releases/1.4.4.txt
@@ -17,10 +17,10 @@ Host header poisoning
Some parts of Django -- independent of end-user-written applications -- make
use of full URLs, including domain name, which are generated from the HTTP Host
header. Django's documentation has for some time contained notes advising users
-on how to configure Web servers to ensure that only valid Host headers can reach
+on how to configure web servers to ensure that only valid Host headers can reach
the Django application. However, it has been reported to us that even with the
-recommended Web server configurations there are still techniques available for
-tricking many common Web servers into supplying the application with an
+recommended web server configurations there are still techniques available for
+tricking many common web servers into supplying the application with an
incorrect and possibly malicious Host header.
For this reason, Django 1.4.4 adds a new setting, ``ALLOWED_HOSTS``, containing
diff --git a/docs/releases/1.4.txt b/docs/releases/1.4.txt
index b9430eb33f..d18061240f 100644
--- a/docs/releases/1.4.txt
+++ b/docs/releases/1.4.txt
@@ -331,7 +331,7 @@ Tools for cryptographic signing
Django 1.4 adds both a low-level API for signing values and a high-level API
for setting and reading signed cookies, one of the most common uses of
-signing in Web applications.
+signing in web applications.
See the :doc:`cryptographic signing ` docs for more
information.
@@ -688,14 +688,14 @@ files included in apps.
Starting in Django 1.4, the admin's static files also follow this
convention, to make the files easier to deploy. In previous versions of Django,
it was also common to define an ``ADMIN_MEDIA_PREFIX`` setting to point to the
-URL where the admin's static files live on a Web server. This setting has now
+URL where the admin's static files live on a web server. This setting has now
been deprecated and replaced by the more general setting :setting:`STATIC_URL`.
Django will now expect to find the admin static files under the URL
``/admin/``.
If you've previously used a URL path for ``ADMIN_MEDIA_PREFIX`` (e.g.
``/media/``) simply make sure :setting:`STATIC_URL` and :setting:`STATIC_ROOT`
-are configured and your Web server serves those files correctly. The
+are configured and your web server serves those files correctly. The
development server continues to serve the admin files just like before. Read
the :doc:`static files howto ` for more details.
@@ -719,7 +719,7 @@ admin app. Our new policy formalizes existing practices: `YUI's A-grade`_
browsers should provide a fully-functional admin experience, with the notable
exception of Internet Explorer 6, which is no longer supported.
-Released over 10 years ago, IE6 imposes many limitations on modern Web
+Released over 10 years ago, IE6 imposes many limitations on modern web
development. The practical implications of this policy are that contributors
are free to improve the admin without consideration for these limitations.
diff --git a/docs/releases/1.9.txt b/docs/releases/1.9.txt
index 241b9daec4..a12151fc80 100644
--- a/docs/releases/1.9.txt
+++ b/docs/releases/1.9.txt
@@ -591,7 +591,7 @@ Requests and Responses
* The :class:`~django.middleware.common.BrokenLinkEmailsMiddleware` now
ignores 404s when the referer is equal to the requested URL. To circumvent
- the empty referer check already implemented, some Web bots set the referer to
+ the empty referer check already implemented, some web bots set the referer to
the requested URL.
Templates
diff --git a/docs/releases/2.0.txt b/docs/releases/2.0.txt
index 5f0a17dc97..7ad0a27ed4 100644
--- a/docs/releases/2.0.txt
+++ b/docs/releases/2.0.txt
@@ -306,7 +306,7 @@ Pagination
Requests and Responses
~~~~~~~~~~~~~~~~~~~~~~
-* The :djadmin:`runserver` Web server supports HTTP 1.1.
+* The :djadmin:`runserver` web server supports HTTP 1.1.
Templates
~~~~~~~~~
diff --git a/docs/spelling_wordlist b/docs/spelling_wordlist
index ef412d7d0b..9db73b0395 100644
--- a/docs/spelling_wordlist
+++ b/docs/spelling_wordlist
@@ -790,7 +790,6 @@ versioning
vertices
viewable
virtualized
-Weblog
whitespace
whitespaces
whizbang
diff --git a/docs/topics/auth/customizing.txt b/docs/topics/auth/customizing.txt
index 9ae30b4b25..3c73783b24 100644
--- a/docs/topics/auth/customizing.txt
+++ b/docs/topics/auth/customizing.txt
@@ -64,7 +64,7 @@ That's the basic authentication backend that checks the Django users database
and queries the built-in permissions. It does not provide protection against
brute force attacks via any rate limiting mechanism. You may either implement
your own rate limiting mechanism in a custom auth backend, or use the
-mechanisms provided by most Web servers.
+mechanisms provided by most web servers.
The order of :setting:`AUTHENTICATION_BACKENDS` matters, so if the same
username and password is valid in multiple backends, Django will stop
diff --git a/docs/topics/auth/default.txt b/docs/topics/auth/default.txt
index 82cf58c128..a89949894f 100644
--- a/docs/topics/auth/default.txt
+++ b/docs/topics/auth/default.txt
@@ -347,7 +347,7 @@ inherit the permissions of the concrete model they subclass::
.. _auth-web-requests:
-Authentication in Web requests
+Authentication in web requests
==============================
Django uses :doc:`sessions ` and middleware to hook the
@@ -451,7 +451,7 @@ How to log a user out
When you call :func:`~django.contrib.auth.logout()`, the session data for
the current request is completely cleaned out. All existing data is
- removed. This is to prevent another person from using the same Web browser
+ removed. This is to prevent another person from using the same web browser
to log in and have access to the previous user's session data. If you want
to put anything into the session that will be available to the user
immediately after logging out, do that *after* calling
diff --git a/docs/topics/cache.txt b/docs/topics/cache.txt
index 4c0dbd83f5..27414df344 100644
--- a/docs/topics/cache.txt
+++ b/docs/topics/cache.txt
@@ -3,13 +3,13 @@ Django's cache framework
========================
A fundamental trade-off in dynamic websites is, well, they're dynamic. Each
-time a user requests a page, the Web server makes all sorts of calculations --
+time a user requests a page, the web server makes all sorts of calculations --
from database queries to template rendering to business logic -- to create the
page that your site's visitor sees. This is a lot more expensive, from a
processing-overhead perspective, than your standard
read-a-file-off-the-filesystem server arrangement.
-For most Web applications, this overhead isn't a big deal. Most Web
+For most web applications, this overhead isn't a big deal. Most web
applications aren't ``washingtonpost.com`` or ``slashdot.org``; they're small-
to medium-sized sites with so-so traffic. But for medium- to high-traffic
sites, it's essential to cut as much overhead as possible.
@@ -18,7 +18,7 @@ That's where caching comes in.
To cache something is to save the result of an expensive calculation so that
you don't have to perform the calculation next time. Here's some pseudocode
-explaining how this would work for a dynamically generated Web page::
+explaining how this would work for a dynamically generated web page::
given a URL, try finding that page in the cache
if the page is in the cache:
@@ -297,7 +297,7 @@ setting.
Make sure the directory pointed-to by this setting either exists and is
readable and writable, or that it can be created by the system user under which
-your Web server runs. Continuing the above example, if your server runs as the
+your web server runs. Continuing the above example, if your server runs as the
user ``apache``, make sure the directory ``/var/tmp/django_cache`` exists and
is readable and writable by the user ``apache``, or that it can be created by
the user ``apache``.
@@ -1129,7 +1129,7 @@ Downstream caches
=================
So far, this document has focused on caching your *own* data. But another type
-of caching is relevant to Web development, too: caching performed by
+of caching is relevant to web development, too: caching performed by
"downstream" caches. These are systems that cache pages for users even before
the request reaches your website.
@@ -1139,7 +1139,7 @@ Here are a few examples of downstream caches:
certain pages, so if you requested a page from ``http://example.com/``, your
ISP would send you the page without having to access example.com directly.
The maintainers of example.com have no knowledge of this caching; the ISP
- sits between example.com and your Web browser, handling all of the caching
+ sits between example.com and your web browser, handling all of the caching
transparently. Such caching is not possible under HTTPS as it would
constitute a man-in-the-middle attack.
@@ -1148,17 +1148,17 @@ Here are a few examples of downstream caches:
performance. In this case, each request first would be handled by the
proxy, and it would be passed to your application only if needed.
-* Your Web browser caches pages, too. If a Web page sends out the
+* Your web browser caches pages, too. If a web page sends out the
appropriate headers, your browser will use the local cached copy for
- subsequent requests to that page, without even contacting the Web page
+ subsequent requests to that page, without even contacting the web page
again to see whether it has changed.
Downstream caching is a nice efficiency boost, but there's a danger to it:
-Many Web pages' contents differ based on authentication and a host of other
+Many web pages' contents differ based on authentication and a host of other
variables, and cache systems that blindly save pages based purely on URLs could
expose incorrect or sensitive data to subsequent visitors to those pages.
-For example, if you operate a Web email system, then the contents of the
+For example, if you operate a web email system, then the contents of the
"inbox" page depend on which user is logged in. If an ISP blindly cached your
site, then the first user who logged in through that ISP would have their
user-specific inbox page cached for subsequent visitors to the site. That's
@@ -1176,7 +1176,7 @@ Using ``Vary`` headers
The ``Vary`` header defines which request headers a cache
mechanism should take into account when building its cache key. For example, if
-the contents of a Web page depend on a user's language preference, the page is
+the contents of a web page depend on a user's language preference, the page is
said to "vary on language."
By default, Django's cache system creates its cache keys using the requested
@@ -1262,7 +1262,7 @@ A user usually faces two kinds of caches: their own browser cache (a private
cache) and their provider's cache (a public cache). A public cache is used by
multiple users and controlled by someone else. This poses problems with
sensitive data--you don't want, say, your bank account number stored in a
-public cache. So Web applications need a way to tell caches which data is
+public cache. So web applications need a way to tell caches which data is
private and which is public.
The solution is to indicate a page's cache should be "private." To do this in
diff --git a/docs/topics/class-based-views/generic-display.txt b/docs/topics/class-based-views/generic-display.txt
index e7ba5c99a2..cb35296149 100644
--- a/docs/topics/class-based-views/generic-display.txt
+++ b/docs/topics/class-based-views/generic-display.txt
@@ -2,9 +2,9 @@
Built-in class-based generic views
==================================
-Writing Web applications can be monotonous, because we repeat certain patterns
+Writing web applications can be monotonous, because we repeat certain patterns
again and again. Django tries to take away some of that monotony at the model
-and template layers, but Web developers also experience this boredom at the view
+and template layers, but web developers also experience this boredom at the view
level.
Django's *generic views* were developed to ease that pain. They take certain
diff --git a/docs/topics/conditional-view-processing.txt b/docs/topics/conditional-view-processing.txt
index d565576a16..fc589cf288 100644
--- a/docs/topics/conditional-view-processing.txt
+++ b/docs/topics/conditional-view-processing.txt
@@ -4,7 +4,7 @@ Conditional View Processing
HTTP clients can send a number of headers to tell the server about copies of a
resource that they have already seen. This is commonly used when retrieving a
-Web page (using an HTTP ``GET`` request) to avoid sending all the data for
+web page (using an HTTP ``GET`` request) to avoid sending all the data for
something the client has already retrieved. However, the same headers can be
used for all HTTP methods (``POST``, ``PUT``, ``DELETE``, etc.).
diff --git a/docs/topics/db/examples/many_to_many.txt b/docs/topics/db/examples/many_to_many.txt
index 752abe9f72..f53f3c131a 100644
--- a/docs/topics/db/examples/many_to_many.txt
+++ b/docs/topics/db/examples/many_to_many.txt
@@ -47,14 +47,14 @@ Create a few ``Publications``::
Create an ``Article``::
- >>> a1 = Article(headline='Django lets you build Web apps easily')
+ >>> a1 = Article(headline='Django lets you build web apps easily')
You can't associate it with a ``Publication`` until it's been saved::
>>> a1.publications.add(p1)
Traceback (most recent call last):
...
- ValueError: "" needs to have a value for field "id" before this many-to-many relationship can be used.
+ ValueError: "" needs to have a value for field "id" before this many-to-many relationship can be used.
Save it!
::
@@ -100,7 +100,7 @@ Create and add a ``Publication`` to an ``Article`` in one step using
>>> p2.article_set.all()
]>
>>> p1.article_set.all()
- , ]>
+ , ]>
>>> Publication.objects.get(id=4).article_set.all()
]>
@@ -108,13 +108,13 @@ Many-to-many relationships can be queried using :ref:`lookups across
relationships `::
>>> Article.objects.filter(publications__id=1)
- , ]>
+ , ]>
>>> Article.objects.filter(publications__pk=1)
- , ]>
+ , ]>
>>> Article.objects.filter(publications=1)
- , ]>
+ , ]>
>>> Article.objects.filter(publications=p1)
- , ]>
+ , ]>
>>> Article.objects.filter(publications__title__startswith="Science")
, ]>
@@ -132,9 +132,9 @@ The :meth:`~django.db.models.query.QuerySet.count` function respects
1
>>> Article.objects.filter(publications__in=[1,2]).distinct()
- , ]>
+ , ]>
>>> Article.objects.filter(publications__in=[p1,p2]).distinct()
- , ]>
+ , ]>
Reverse m2m queries are supported (i.e., starting at the table that doesn't have
a :class:`~django.db.models.ManyToManyField`)::
@@ -165,7 +165,7 @@ Excluding a related item works as you would expect, too (although the SQL
involved is a little complex)::
>>> Article.objects.exclude(publications=p2)
- ]>
+ ]>
If we delete a ``Publication``, its ``Articles`` won't be able to access it::
@@ -180,7 +180,7 @@ If we delete an ``Article``, its ``Publications`` won't be able to access it::
>>> a2.delete()
>>> Article.objects.all()
- ]>
+ ]>
>>> p2.article_set.all()
@@ -261,7 +261,7 @@ go::
>>> Publication.objects.all()
, ]>
>>> Article.objects.all()
- , , , ]>
+ , , , ]>
>>> a2.publications.all()
]>
@@ -269,7 +269,7 @@ Bulk delete some articles - references to deleted objects should go::
>>> q = Article.objects.filter(headline__startswith='Django')
>>> print(q)
- ]>
+ ]>
>>> q.delete()
After the :meth:`~django.db.models.query.QuerySet.delete`, the
diff --git a/docs/topics/db/optimization.txt b/docs/topics/db/optimization.txt
index 180cd60a46..c9a0396b89 100644
--- a/docs/topics/db/optimization.txt
+++ b/docs/topics/db/optimization.txt
@@ -81,7 +81,7 @@ Understand cached attributes
As well as caching of the whole ``QuerySet``, there is caching of the result of
attributes on ORM objects. In general, attributes that are not callable will be
-cached. For example, assuming the :ref:`example Weblog models
+cached. For example, assuming the :ref:`example blog models
`::
>>> entry = Entry.objects.get(id=1)
@@ -164,7 +164,7 @@ First, the query will be quicker because of the underlying database index.
Also, the query could run much slower if multiple objects match the lookup;
having a unique constraint on the column guarantees this will never happen.
-So using the :ref:`example Weblog models `::
+So using the :ref:`example blog models `::
>>> entry = Entry.objects.get(id=10)
diff --git a/docs/topics/db/queries.txt b/docs/topics/db/queries.txt
index f06dd21680..ac425e99f4 100644
--- a/docs/topics/db/queries.txt
+++ b/docs/topics/db/queries.txt
@@ -11,7 +11,7 @@ API. Refer to the :doc:`data model reference ` for full
details of all the various model lookup options.
Throughout this guide (and in the reference), we'll refer to the following
-models, which comprise a Weblog application:
+models, which comprise a blog application:
.. _queryset-model-example:
@@ -1181,7 +1181,7 @@ object and returns the number of objects deleted and a dictionary with
the number of deletions per object type. Example::
>>> e.delete()
- (1, {'weblog.Entry': 1})
+ (1, {'blog.Entry': 1})
You can also delete objects in bulk. Every
:class:`~django.db.models.query.QuerySet` has a
diff --git a/docs/topics/forms/index.txt b/docs/topics/forms/index.txt
index e55b6d7bf2..eed18a2cee 100644
--- a/docs/topics/forms/index.txt
+++ b/docs/topics/forms/index.txt
@@ -77,7 +77,7 @@ should be used only for requests that do not affect the state of the system.
``GET`` would also be unsuitable for a password form, because the password
would appear in the URL, and thus, also in browser history and server logs,
all in plain text. Neither would it be suitable for large quantities of data,
-or for binary data, such as an image. A Web application that uses ``GET``
+or for binary data, such as an image. A web application that uses ``GET``
requests for admin forms is a security risk: it can be easy for an attacker to
mimic a form's request to gain access to sensitive parts of the system.
``POST``, coupled with other protections like Django's :doc:`CSRF protection
@@ -115,7 +115,7 @@ Forms in Django
We've described HTML forms briefly, but an HTML ``