Used :envvar: role and .. envvar:: directive in various docs.
This commit is contained in:
parent
feb91dbda1
commit
fbdb032de2
|
@ -2,12 +2,12 @@
|
||||||
FAQ: Using Django
|
FAQ: Using Django
|
||||||
=================
|
=================
|
||||||
|
|
||||||
Why do I get an error about importing DJANGO_SETTINGS_MODULE?
|
Why do I get an error about importing :envvar:`DJANGO_SETTINGS_MODULE`?
|
||||||
=============================================================
|
=======================================================================
|
||||||
|
|
||||||
Make sure that:
|
Make sure that:
|
||||||
|
|
||||||
* The environment variable DJANGO_SETTINGS_MODULE is set to a
|
* The environment variable :envvar:`DJANGO_SETTINGS_MODULE` is set to a
|
||||||
fully-qualified Python module (i.e. "mysite.settings").
|
fully-qualified Python module (i.e. "mysite.settings").
|
||||||
|
|
||||||
* Said module is on ``sys.path`` (``import mysite.settings`` should work).
|
* Said module is on ``sys.path`` (``import mysite.settings`` should work).
|
||||||
|
|
|
@ -77,7 +77,7 @@ The Django-specific options here are:
|
||||||
path -- i.e., the directory containing the ``mysite`` package.
|
path -- i.e., the directory containing the ``mysite`` package.
|
||||||
* ``module``: The WSGI module to use -- probably the ``mysite.wsgi`` module
|
* ``module``: The WSGI module to use -- probably the ``mysite.wsgi`` module
|
||||||
that :djadmin:`startproject` creates.
|
that :djadmin:`startproject` creates.
|
||||||
* ``env``: Should probably contain at least ``DJANGO_SETTINGS_MODULE``.
|
* ``env``: Should probably contain at least :envvar:`DJANGO_SETTINGS_MODULE`.
|
||||||
* ``home``: Optional path to your project virtualenv.
|
* ``home``: Optional path to your project virtualenv.
|
||||||
|
|
||||||
Example ini configuration file::
|
Example ini configuration file::
|
||||||
|
|
|
@ -283,8 +283,8 @@ at the top level (i.e. evaluated when the module is imported). The explanation
|
||||||
for this is as follows:
|
for this is as follows:
|
||||||
|
|
||||||
Manual configuration of settings (i.e. not relying on the
|
Manual configuration of settings (i.e. not relying on the
|
||||||
``DJANGO_SETTINGS_MODULE`` environment variable) is allowed and possible as
|
:envvar:`DJANGO_SETTINGS_MODULE` environment variable) is allowed and possible
|
||||||
follows::
|
as follows::
|
||||||
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
|
|
||||||
|
|
|
@ -105,8 +105,8 @@ The remainder of this documentation shows commands for running tests without
|
||||||
``tox``, however, any option passed to ``runtests.py`` can also be passed to
|
``tox``, however, any option passed to ``runtests.py`` can also be passed to
|
||||||
``tox`` by prefixing the argument list with ``--``, as above.
|
``tox`` by prefixing the argument list with ``--``, as above.
|
||||||
|
|
||||||
Tox also respects the ``DJANGO_SETTINGS_MODULE`` environment variable, if set.
|
Tox also respects the :envvar:`DJANGO_SETTINGS_MODULE` environment variable, if
|
||||||
For example, the following is equivalent to the command above:
|
set. For example, the following is equivalent to the command above:
|
||||||
|
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
|
@ -156,7 +156,7 @@ those for ``contrib.postgres``, are specific to a particular database backend
|
||||||
and will be skipped if run with a different backend.
|
and will be skipped if run with a different backend.
|
||||||
|
|
||||||
To run the tests with different settings, ensure that the module is on your
|
To run the tests with different settings, ensure that the module is on your
|
||||||
``PYTHONPATH`` and pass the module with ``--settings``.
|
:envvar:`PYTHONPATH` and pass the module with ``--settings``.
|
||||||
|
|
||||||
The :setting:`DATABASES` setting in any test settings module needs to define
|
The :setting:`DATABASES` setting in any test settings module needs to define
|
||||||
two databases:
|
two databases:
|
||||||
|
@ -495,8 +495,8 @@ test failures. You can adjust this behavior with the ``--parallel`` option:
|
||||||
|
|
||||||
$ ./runtests.py basic --parallel=1
|
$ ./runtests.py basic --parallel=1
|
||||||
|
|
||||||
You can also use the ``DJANGO_TEST_PROCESSES`` environment variable for this
|
You can also use the :envvar:`DJANGO_TEST_PROCESSES` environment variable for
|
||||||
purpose.
|
this purpose.
|
||||||
|
|
||||||
Tips for writing tests
|
Tips for writing tests
|
||||||
======================
|
======================
|
||||||
|
|
|
@ -246,6 +246,10 @@ documentation:
|
||||||
* Use :rst:role:`:mimetype:<mimetype>` to refer to a MIME Type unless the value
|
* Use :rst:role:`:mimetype:<mimetype>` to refer to a MIME Type unless the value
|
||||||
is quoted for a code example.
|
is quoted for a code example.
|
||||||
|
|
||||||
|
* Use :rst:role:`:envvar:<envvar>` to refer to an environment variable. You may
|
||||||
|
also need to define a reference to the documentation for that environment
|
||||||
|
variable using :rst:dir:`.. envvar:: <envvar>`.
|
||||||
|
|
||||||
Django-specific markup
|
Django-specific markup
|
||||||
======================
|
======================
|
||||||
|
|
||||||
|
|
|
@ -378,8 +378,8 @@ API Django gives you. To invoke the Python shell, use this command:
|
||||||
$ python manage.py shell
|
$ python manage.py shell
|
||||||
|
|
||||||
We're using this instead of simply typing "python", because :file:`manage.py`
|
We're using this instead of simply typing "python", because :file:`manage.py`
|
||||||
sets the ``DJANGO_SETTINGS_MODULE`` environment variable, which gives Django
|
sets the :envvar:`DJANGO_SETTINGS_MODULE` environment variable, which gives
|
||||||
the Python import path to your :file:`mysite/settings.py` file.
|
Django the Python import path to your :file:`mysite/settings.py` file.
|
||||||
|
|
||||||
Once you're in the shell, explore the :doc:`database API </topics/db/queries>`::
|
Once you're in the shell, explore the :doc:`database API </topics/db/queries>`::
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@ Asynchronous support
|
||||||
|
|
||||||
The following checks verify your setup for :doc:`/topics/async`:
|
The following checks verify your setup for :doc:`/topics/async`:
|
||||||
|
|
||||||
* **async.E001**: You should not set the ``DJANGO_ALLOW_ASYNC_UNSAFE``
|
* **async.E001**: You should not set the :envvar:`DJANGO_ALLOW_ASYNC_UNSAFE`
|
||||||
environment variable in deployment. This disables :ref:`async safety
|
environment variable in deployment. This disables :ref:`async safety
|
||||||
protection <async-safety>`.
|
protection <async-safety>`.
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ features include:
|
||||||
in Python using ``ctypes``.
|
in Python using ``ctypes``.
|
||||||
* Loosely-coupled to GeoDjango. For example, :class:`GEOSGeometry` objects
|
* Loosely-coupled to GeoDjango. For example, :class:`GEOSGeometry` objects
|
||||||
may be used outside of a Django project/application. In other words,
|
may be used outside of a Django project/application. In other words,
|
||||||
no need to have ``DJANGO_SETTINGS_MODULE`` set or use a database, etc.
|
no need to have :envvar:`DJANGO_SETTINGS_MODULE` set or use a database, etc.
|
||||||
* Mutability: :class:`GEOSGeometry` objects may be modified.
|
* Mutability: :class:`GEOSGeometry` objects may be modified.
|
||||||
* Cross-platform and tested; compatible with Windows, Linux, Solaris, and
|
* Cross-platform and tested; compatible with Windows, Linux, Solaris, and
|
||||||
macOS platforms.
|
macOS platforms.
|
||||||
|
|
|
@ -127,8 +127,8 @@ Activates some additional checks that are only relevant in a deployment setting.
|
||||||
You can use this option in your local development environment, but since your
|
You can use this option in your local development environment, but since your
|
||||||
local development settings module may not have many of your production settings,
|
local development settings module may not have many of your production settings,
|
||||||
you will probably want to point the ``check`` command at a different settings
|
you will probably want to point the ``check`` command at a different settings
|
||||||
module, either by setting the ``DJANGO_SETTINGS_MODULE`` environment variable,
|
module, either by setting the :envvar:`DJANGO_SETTINGS_MODULE` environment
|
||||||
or by passing the ``--settings`` option::
|
variable, or by passing the ``--settings`` option::
|
||||||
|
|
||||||
django-admin check --deploy --settings=production_settings
|
django-admin check --deploy --settings=production_settings
|
||||||
|
|
||||||
|
@ -940,8 +940,10 @@ more robust change detection, and a reduction in power usage. Django supports
|
||||||
|
|
||||||
.. admonition:: Watchman timeout
|
.. admonition:: Watchman timeout
|
||||||
|
|
||||||
|
.. envvar:: DJANGO_WATCHMAN_TIMEOUT
|
||||||
|
|
||||||
The default timeout of ``Watchman`` client is 5 seconds. You can change it
|
The default timeout of ``Watchman`` client is 5 seconds. You can change it
|
||||||
by setting the ``DJANGO_WATCHMAN_TIMEOUT`` environment variable.
|
by setting the :envvar:`DJANGO_WATCHMAN_TIMEOUT` environment variable.
|
||||||
|
|
||||||
.. _Watchman: https://facebook.github.io/watchman/
|
.. _Watchman: https://facebook.github.io/watchman/
|
||||||
.. _pywatchman: https://pypi.org/project/pywatchman/
|
.. _pywatchman: https://pypi.org/project/pywatchman/
|
||||||
|
@ -1420,13 +1422,15 @@ Enables :ref:`SQL logging <django-db-logger>` for failing tests. If
|
||||||
|
|
||||||
.. django-admin-option:: --parallel [N]
|
.. django-admin-option:: --parallel [N]
|
||||||
|
|
||||||
|
.. envvar:: DJANGO_TEST_PROCESSES
|
||||||
|
|
||||||
Runs tests in separate parallel processes. Since modern processors have
|
Runs tests in separate parallel processes. Since modern processors have
|
||||||
multiple cores, this allows running tests significantly faster.
|
multiple cores, this allows running tests significantly faster.
|
||||||
|
|
||||||
By default ``--parallel`` runs one process per core according to
|
By default ``--parallel`` runs one process per core according to
|
||||||
:func:`multiprocessing.cpu_count()`. You can adjust the number of processes
|
:func:`multiprocessing.cpu_count()`. You can adjust the number of processes
|
||||||
either by providing it as the option's value, e.g. ``--parallel=4``, or by
|
either by providing it as the option's value, e.g. ``--parallel=4``, or by
|
||||||
setting the ``DJANGO_TEST_PROCESSES`` environment variable.
|
setting the :envvar:`DJANGO_TEST_PROCESSES` environment variable.
|
||||||
|
|
||||||
Django distributes test cases — :class:`unittest.TestCase` subclasses — to
|
Django distributes test cases — :class:`unittest.TestCase` subclasses — to
|
||||||
subprocesses. If there are fewer test cases than configured processes, Django
|
subprocesses. If there are fewer test cases than configured processes, Django
|
||||||
|
@ -1599,6 +1603,8 @@ Example usage::
|
||||||
|
|
||||||
.. django-admin:: createsuperuser
|
.. django-admin:: createsuperuser
|
||||||
|
|
||||||
|
.. envvar:: DJANGO_SUPERUSER_PASSWORD
|
||||||
|
|
||||||
This command is only available if Django's :doc:`authentication system
|
This command is only available if Django's :doc:`authentication system
|
||||||
</topics/auth/index>` (``django.contrib.auth``) is installed.
|
</topics/auth/index>` (``django.contrib.auth``) is installed.
|
||||||
|
|
||||||
|
@ -1608,9 +1614,9 @@ programmatically generate superuser accounts for your site(s).
|
||||||
|
|
||||||
When run interactively, this command will prompt for a password for
|
When run interactively, this command will prompt for a password for
|
||||||
the new superuser account. When run non-interactively, you can provide
|
the new superuser account. When run non-interactively, you can provide
|
||||||
a password by setting the ``DJANGO_SUPERUSER_PASSWORD`` environment variable.
|
a password by setting the :envvar:`DJANGO_SUPERUSER_PASSWORD` environment
|
||||||
Otherwise, no password will be set, and the superuser account will not be able
|
variable. Otherwise, no password will be set, and the superuser account will
|
||||||
to log in until a password has been manually set for it.
|
not be able to log in until a password has been manually set for it.
|
||||||
|
|
||||||
In non-interactive mode, the
|
In non-interactive mode, the
|
||||||
:attr:`~django.contrib.auth.models.CustomUser.USERNAME_FIELD` and required
|
:attr:`~django.contrib.auth.models.CustomUser.USERNAME_FIELD` and required
|
||||||
|
@ -1738,7 +1744,7 @@ allows for the following options:
|
||||||
.. django-admin-option:: --pythonpath PYTHONPATH
|
.. django-admin-option:: --pythonpath PYTHONPATH
|
||||||
|
|
||||||
Adds the given filesystem path to the Python `import search path`_. If this
|
Adds the given filesystem path to the Python `import search path`_. If this
|
||||||
isn't provided, ``django-admin`` will use the ``PYTHONPATH`` environment
|
isn't provided, ``django-admin`` will use the :envvar:`PYTHONPATH` environment
|
||||||
variable.
|
variable.
|
||||||
|
|
||||||
This option is unnecessary in ``manage.py``, because it takes care of setting
|
This option is unnecessary in ``manage.py``, because it takes care of setting
|
||||||
|
@ -1754,7 +1760,8 @@ Example usage::
|
||||||
|
|
||||||
Specifies the settings module to use. The settings module should be in Python
|
Specifies the settings module to use. The settings module should be in Python
|
||||||
package syntax, e.g. ``mysite.settings``. If this isn't provided,
|
package syntax, e.g. ``mysite.settings``. If this isn't provided,
|
||||||
``django-admin`` will use the ``DJANGO_SETTINGS_MODULE`` environment variable.
|
``django-admin`` will use the :envvar:`DJANGO_SETTINGS_MODULE` environment
|
||||||
|
variable.
|
||||||
|
|
||||||
This option is unnecessary in ``manage.py``, because it uses
|
This option is unnecessary in ``manage.py``, because it uses
|
||||||
``settings.py`` from the current project by default.
|
``settings.py`` from the current project by default.
|
||||||
|
@ -1822,6 +1829,8 @@ Extra niceties
|
||||||
Syntax coloring
|
Syntax coloring
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
.. envvar:: DJANGO_COLORS
|
||||||
|
|
||||||
The ``django-admin`` / ``manage.py`` commands will use pretty
|
The ``django-admin`` / ``manage.py`` commands will use pretty
|
||||||
color-coded output if your terminal supports ANSI-colored output. It
|
color-coded output if your terminal supports ANSI-colored output. It
|
||||||
won't use the color codes if you're piping the command's output to
|
won't use the color codes if you're piping the command's output to
|
||||||
|
@ -1843,7 +1852,7 @@ ships with three color palettes:
|
||||||
|
|
||||||
* ``nocolor``, which disables syntax highlighting.
|
* ``nocolor``, which disables syntax highlighting.
|
||||||
|
|
||||||
You select a palette by setting a ``DJANGO_COLORS`` environment
|
You select a palette by setting a :envvar:`DJANGO_COLORS` environment
|
||||||
variable to specify the palette you want to use. For example, to
|
variable to specify the palette you want to use. For example, to
|
||||||
specify the ``light`` palette under a Unix or OS/X BASH shell, you
|
specify the ``light`` palette under a Unix or OS/X BASH shell, you
|
||||||
would run the following at a command prompt::
|
would run the following at a command prompt::
|
||||||
|
|
|
@ -321,9 +321,9 @@ and calculated values can be displayed alongside editable fields.
|
||||||
Customizable syntax highlighting
|
Customizable syntax highlighting
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
You can now use a ``DJANGO_COLORS`` environment variable to modify or disable
|
You can now use a :envvar:`DJANGO_COLORS` environment variable to modify or
|
||||||
the colors used by ``django-admin.py`` to provide :ref:`syntax highlighting
|
disable the colors used by ``django-admin.py`` to provide :ref:`syntax
|
||||||
<syntax-coloring>`.
|
highlighting <syntax-coloring>`.
|
||||||
|
|
||||||
Syndication feeds as views
|
Syndication feeds as views
|
||||||
--------------------------
|
--------------------------
|
||||||
|
|
|
@ -1257,7 +1257,7 @@ needed with the new ``manage.py`` and default project layout.
|
||||||
|
|
||||||
This function was never documented or part of the public API, but it was widely
|
This function was never documented or part of the public API, but it was widely
|
||||||
recommended for use in setting up a "Django environment" for a user script.
|
recommended for use in setting up a "Django environment" for a user script.
|
||||||
These uses should be replaced by setting the ``DJANGO_SETTINGS_MODULE``
|
These uses should be replaced by setting the :envvar:`DJANGO_SETTINGS_MODULE`
|
||||||
environment variable or using :func:`django.conf.settings.configure`.
|
environment variable or using :func:`django.conf.settings.configure`.
|
||||||
|
|
||||||
``django.core.management.execute_manager``
|
``django.core.management.execute_manager``
|
||||||
|
|
|
@ -58,7 +58,8 @@ Bugfixes
|
||||||
|
|
||||||
* Increased the default timeout when using ``Watchman`` to 5 seconds to prevent
|
* Increased the default timeout when using ``Watchman`` to 5 seconds to prevent
|
||||||
falling back to ``StatReloader`` on larger projects and made it customizable
|
falling back to ``StatReloader`` on larger projects and made it customizable
|
||||||
via the ``DJANGO_WATCHMAN_TIMEOUT`` environment variable (:ticket:`30361`).
|
via the :envvar:`DJANGO_WATCHMAN_TIMEOUT` environment variable
|
||||||
|
(:ticket:`30361`).
|
||||||
|
|
||||||
* Fixed a regression in Django 2.2 that caused a crash when migrating
|
* Fixed a regression in Django 2.2 that caused a crash when migrating
|
||||||
permissions for proxy models if the target permissions already existed. For
|
permissions for proxy models if the target permissions already existed. For
|
||||||
|
|
|
@ -28,7 +28,7 @@ Bugfixes
|
||||||
* Fixed a regression in Django 3.0 by restoring the ability to use Django
|
* Fixed a regression in Django 3.0 by restoring the ability to use Django
|
||||||
inside Jupyter and other environments that force an async context, by adding
|
inside Jupyter and other environments that force an async context, by adding
|
||||||
an option to disable :ref:`async-safety` mechanism with
|
an option to disable :ref:`async-safety` mechanism with
|
||||||
``DJANGO_ALLOW_ASYNC_UNSAFE`` environment variable (:ticket:`31056`).
|
:envvar:`DJANGO_ALLOW_ASYNC_UNSAFE` environment variable (:ticket:`31056`).
|
||||||
|
|
||||||
* Fixed a regression in Django 3.0 where ``RegexPattern``, used by
|
* Fixed a regression in Django 3.0 where ``RegexPattern``, used by
|
||||||
:func:`~django.urls.re_path`, returned positional arguments to be passed to
|
:func:`~django.urls.re_path`, returned positional arguments to be passed to
|
||||||
|
|
|
@ -118,6 +118,8 @@ mode if you have asynchronous code in your project.
|
||||||
Async safety
|
Async safety
|
||||||
============
|
============
|
||||||
|
|
||||||
|
.. envvar:: DJANGO_ALLOW_ASYNC_UNSAFE
|
||||||
|
|
||||||
Certain key parts of Django are not able to operate safely in an async
|
Certain key parts of Django are not able to operate safely in an async
|
||||||
environment, as they have global state that is not coroutine-aware. These parts
|
environment, as they have global state that is not coroutine-aware. These parts
|
||||||
of Django are classified as "async-unsafe", and are protected from execution in
|
of Django are classified as "async-unsafe", and are protected from execution in
|
||||||
|
@ -144,7 +146,7 @@ if the requirement is forced on you by an external environment, such as in a
|
||||||
Jupyter_ notebook. If you are sure there is no chance of the code being run
|
Jupyter_ notebook. If you are sure there is no chance of the code being run
|
||||||
concurrently, and you *absolutely* need to run this sync code from an async
|
concurrently, and you *absolutely* need to run this sync code from an async
|
||||||
context, then you can disable the warning by setting the
|
context, then you can disable the warning by setting the
|
||||||
``DJANGO_ALLOW_ASYNC_UNSAFE`` environment variable to any value.
|
:envvar:`DJANGO_ALLOW_ASYNC_UNSAFE` environment variable to any value.
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
|
|
||||||
|
|
|
@ -40,10 +40,10 @@ Designating the settings
|
||||||
.. envvar:: DJANGO_SETTINGS_MODULE
|
.. envvar:: DJANGO_SETTINGS_MODULE
|
||||||
|
|
||||||
When you use Django, you have to tell it which settings you're using. Do this
|
When you use Django, you have to tell it which settings you're using. Do this
|
||||||
by using an environment variable, ``DJANGO_SETTINGS_MODULE``.
|
by using an environment variable, :envvar:`DJANGO_SETTINGS_MODULE`.
|
||||||
|
|
||||||
The value of ``DJANGO_SETTINGS_MODULE`` should be in Python path syntax, e.g.
|
The value of :envvar:`DJANGO_SETTINGS_MODULE` should be in Python path syntax,
|
||||||
``mysite.settings``. Note that the settings module should be on the
|
e.g. ``mysite.settings``. Note that the settings module should be on the
|
||||||
Python `import search path`_.
|
Python `import search path`_.
|
||||||
|
|
||||||
.. _import search path: https://www.diveinto.org/python3/your-first-python-program.html#importsearchpath
|
.. _import search path: https://www.diveinto.org/python3/your-first-python-program.html#importsearchpath
|
||||||
|
@ -170,10 +170,10 @@ a convention.
|
||||||
|
|
||||||
.. _settings-without-django-settings-module:
|
.. _settings-without-django-settings-module:
|
||||||
|
|
||||||
Using settings without setting ``DJANGO_SETTINGS_MODULE``
|
Using settings without setting :envvar:`DJANGO_SETTINGS_MODULE`
|
||||||
=========================================================
|
===============================================================
|
||||||
|
|
||||||
In some cases, you might want to bypass the ``DJANGO_SETTINGS_MODULE``
|
In some cases, you might want to bypass the :envvar:`DJANGO_SETTINGS_MODULE`
|
||||||
environment variable. For example, if you're using the template system by
|
environment variable. For example, if you're using the template system by
|
||||||
itself, you likely don't want to have to set up an environment variable
|
itself, you likely don't want to have to set up an environment variable
|
||||||
pointing to a settings module.
|
pointing to a settings module.
|
||||||
|
@ -234,19 +234,19 @@ defaults, so you must specify a value for every possible setting that might be
|
||||||
used in that code you are importing. Check in
|
used in that code you are importing. Check in
|
||||||
``django.conf.settings.global_settings`` for the full list.
|
``django.conf.settings.global_settings`` for the full list.
|
||||||
|
|
||||||
Either ``configure()`` or ``DJANGO_SETTINGS_MODULE`` is required
|
Either ``configure()`` or :envvar:`DJANGO_SETTINGS_MODULE` is required
|
||||||
----------------------------------------------------------------
|
----------------------------------------------------------------------
|
||||||
|
|
||||||
If you're not setting the ``DJANGO_SETTINGS_MODULE`` environment variable, you
|
If you're not setting the :envvar:`DJANGO_SETTINGS_MODULE` environment
|
||||||
*must* call ``configure()`` at some point before using any code that reads
|
variable, you *must* call ``configure()`` at some point before using any code
|
||||||
settings.
|
that reads settings.
|
||||||
|
|
||||||
If you don't set ``DJANGO_SETTINGS_MODULE`` and don't call ``configure()``,
|
If you don't set :envvar:`DJANGO_SETTINGS_MODULE` and don't call
|
||||||
Django will raise an ``ImportError`` exception the first time a setting
|
``configure()``, Django will raise an ``ImportError`` exception the first time
|
||||||
is accessed.
|
a setting is accessed.
|
||||||
|
|
||||||
If you set ``DJANGO_SETTINGS_MODULE``, access settings values somehow, *then*
|
If you set :envvar:`DJANGO_SETTINGS_MODULE`, access settings values somehow,
|
||||||
call ``configure()``, Django will raise a ``RuntimeError`` indicating
|
*then* call ``configure()``, Django will raise a ``RuntimeError`` indicating
|
||||||
that settings have already been configured. There is a property for this
|
that settings have already been configured. There is a property for this
|
||||||
purpose:
|
purpose:
|
||||||
|
|
||||||
|
@ -262,7 +262,7 @@ Also, it's an error to call ``configure()`` more than once, or to call
|
||||||
``configure()`` after any setting has been accessed.
|
``configure()`` after any setting has been accessed.
|
||||||
|
|
||||||
It boils down to this: Use exactly one of either ``configure()`` or
|
It boils down to this: Use exactly one of either ``configure()`` or
|
||||||
``DJANGO_SETTINGS_MODULE``. Not both, and not neither.
|
:envvar:`DJANGO_SETTINGS_MODULE`. Not both, and not neither.
|
||||||
|
|
||||||
Calling ``django.setup()`` is required for "standalone" Django usage
|
Calling ``django.setup()`` is required for "standalone" Django usage
|
||||||
--------------------------------------------------------------------
|
--------------------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue