1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213 |
- .. _ref-settings:
- Available settings
- ==================
- Here's a full list of all available settings, in alphabetical order, and their
- default values.
- .. setting:: ABSOLUTE_URL_OVERRIDES
- ABSOLUTE_URL_OVERRIDES
- ----------------------
- Default: ``{}`` (Empty dictionary)
- A dictionary mapping ``"app_label.model_name"`` strings to functions that take
- a model object and return its URL. This is a way of overriding
- ``get_absolute_url()`` methods on a per-installation basis. Example::
- ABSOLUTE_URL_OVERRIDES = {
- 'blogs.weblog': lambda o: "/blogs/%s/" % o.slug,
- 'news.story': lambda o: "/stories/%s/%s/" % (o.pub_year, o.slug),
- }
- Note that the model name used in this setting should be all lower-case, regardless
- of the case of the actual model class name.
- .. setting:: ADMIN_FOR
- ADMIN_FOR
- ---------
- Default: ``()`` (Empty tuple)
- Used for admin-site settings modules, this should be a tuple of settings
- modules (in the format ``'foo.bar.baz'``) for which this site is an admin.
- The admin site uses this in its automatically-introspected documentation of
- models, views and template tags.
- .. setting:: ADMIN_MEDIA_PREFIX
- ADMIN_MEDIA_PREFIX
- ------------------
- Default: ``'/media/'``
- The URL prefix for admin media -- CSS, JavaScript and images used by
- the Django administrative interface. Make sure to use a trailing
- slash, and to have this be different from the ``MEDIA_URL`` setting
- (since the same URL cannot be mapped onto two different sets of
- files).
- .. setting:: ADMINS
- ADMINS
- ------
- Default: ``()`` (Empty tuple)
- A tuple that lists people who get code error notifications. When
- ``DEBUG=False`` and a view raises an exception, Django will e-mail these people
- with the full exception information. Each member of the tuple should be a tuple
- of (Full name, e-mail address). Example::
- (('John', 'john@example.com'), ('Mary', 'mary@example.com'))
- Note that Django will e-mail *all* of these people whenever an error happens.
- See :ref:`howto-error-reporting` for more information.
- .. setting:: ALLOWED_INCLUDE_ROOTS
- ALLOWED_INCLUDE_ROOTS
- ---------------------
- Default: ``()`` (Empty tuple)
- A tuple of strings representing allowed prefixes for the ``{% ssi %}`` template
- tag. This is a security measure, so that template authors can't access files
- that they shouldn't be accessing.
- For example, if ``ALLOWED_INCLUDE_ROOTS`` is ``('/home/html', '/var/www')``,
- then ``{% ssi /home/html/foo.txt %}`` would work, but ``{% ssi /etc/passwd %}``
- wouldn't.
- .. setting:: APPEND_SLASH
- APPEND_SLASH
- ------------
- Default: ``True``
- Whether to append trailing slashes to URLs. This is only used if
- ``CommonMiddleware`` is installed (see :ref:`topics-http-middleware`). See also
- ``PREPEND_WWW``.
- .. setting:: AUTHENTICATION_BACKENDS
- AUTHENTICATION_BACKENDS
- -----------------------
- Default: ``('django.contrib.auth.backends.ModelBackend',)``
- A tuple of authentication backend classes (as strings) to use when attempting to
- authenticate a user. See the :ref:`authentication backends documentation
- <authentication-backends>` for details.
- .. setting:: AUTH_PROFILE_MODULE
- AUTH_PROFILE_MODULE
- -------------------
- Default: Not defined
- The site-specific user profile model used by this site. See
- :ref:`auth-profiles`.
- .. setting:: CACHE_BACKEND
- CACHE_BACKEND
- -------------
- Default: ``'locmem://'``
- The cache backend to use. See :ref:`topics-cache`.
- .. setting:: CACHE_MIDDLEWARE_KEY_PREFIX
- CACHE_MIDDLEWARE_KEY_PREFIX
- ---------------------------
- Default: ``''`` (Empty string)
- The cache key prefix that the cache middleware should use. See
- :ref:`topics-cache`.
- .. setting:: CACHE_MIDDLEWARE_SECONDS
- CACHE_MIDDLEWARE_SECONDS
- ------------------------
- Default: ``600``
- The default number of seconds to cache a page when the caching middleware or
- ``cache_page()`` decorator is used.
- .. setting:: DATABASE_ENGINE
- DATABASE_ENGINE
- ---------------
- Default: ``''`` (Empty string)
- The database backend to use. The build-in database backends are
- ``'postgresql_psycopg2'``, ``'postgresql'``, ``'mysql'``, ``'sqlite3'``, and
- ``'oracle'``.
- In the Django development version, you can use a database backend that doesn't
- ship with Django by setting ``DATABASE_ENGINE`` to a fully-qualified path (i.e.
- ``mypackage.backends.whatever``). Writing a whole new database backend from
- scratch is left as an exercise to the reader; see the other backends for
- examples.
- .. setting:: DATABASE_HOST
- DATABASE_HOST
- -------------
- Default: ``''`` (Empty string)
- Which host to use when connecting to the database. An empty string means
- localhost. Not used with SQLite.
- If this value starts with a forward slash (``'/'``) and you're using MySQL,
- MySQL will connect via a Unix socket to the specified socket. For example::
- DATABASE_HOST = '/var/run/mysql'
- If you're using MySQL and this value *doesn't* start with a forward slash, then
- this value is assumed to be the host.
- If you're using PostgreSQL, an empty string means to use a Unix domain socket
- for the connection, rather than a network connection to localhost. If you
- explicitly need to use a TCP/IP connection on the local machine with
- PostgreSQL, specify ``localhost`` here.
- .. setting:: DATABASE_NAME
- DATABASE_NAME
- -------------
- Default: ``''`` (Empty string)
- The name of the database to use. For SQLite, it's the full path to the database
- file.
- .. setting:: DATABASE_OPTIONS
- DATABASE_OPTIONS
- ----------------
- Default: ``{}`` (Empty dictionary)
- Extra parameters to use when connecting to the database. Consult backend
- module's document for available keywords.
- .. setting:: DATABASE_PASSWORD
- DATABASE_PASSWORD
- -----------------
- Default: ``''`` (Empty string)
- The password to use when connecting to the database. Not used with SQLite.
- .. setting:: DATABASE_PORT
- DATABASE_PORT
- -------------
- Default: ``''`` (Empty string)
- The port to use when connecting to the database. An empty string means the
- default port. Not used with SQLite.
- .. setting:: DATABASE_USER
-
- DATABASE_USER
- -------------
- Default: ``''`` (Empty string)
- The username to use when connecting to the database. Not used with SQLite.
- .. setting:: DATE_FORMAT
- DATE_FORMAT
- -----------
- Default: ``'N j, Y'`` (e.g. ``Feb. 4, 2003``)
- The default formatting to use for date fields on Django admin change-list
- pages -- and, possibly, by other parts of the system. See
- :ttag:`allowed date format strings <now>`.
- See also ``DATETIME_FORMAT``, ``TIME_FORMAT``, ``YEAR_MONTH_FORMAT``
- and ``MONTH_DAY_FORMAT``.
- .. setting:: DATETIME_FORMAT
-
- DATETIME_FORMAT
- ---------------
- Default: ``'N j, Y, P'`` (e.g. ``Feb. 4, 2003, 4 p.m.``)
- The default formatting to use for datetime fields on Django admin change-list
- pages -- and, possibly, by other parts of the system. See
- :ttag:`allowed date format strings <now>`.
- See also ``DATE_FORMAT``, ``DATETIME_FORMAT``, ``TIME_FORMAT``,
- ``YEAR_MONTH_FORMAT`` and ``MONTH_DAY_FORMAT``.
- .. setting:: DEBUG
- DEBUG
- -----
- Default: ``False``
- A boolean that turns on/off debug mode.
- If you define custom settings, django/views/debug.py has a ``HIDDEN_SETTINGS``
- regular expression which will hide from the DEBUG view anything that contains
- ``'SECRET'``, ``'PASSWORD'``, or ``'PROFANITIES'``. This allows untrusted users to
- be able to give backtraces without seeing sensitive (or offensive) settings.
- Still, note that there are always going to be sections of your debug output that
- are inappropriate for public consumption. File paths, configuration options, and
- the like all give attackers extra information about your server.
- It is also important to remember that when running with ``DEBUG`` turned on, Django
- will remember every SQL query it executes. This is useful when you are debugging,
- but on a production server, it will rapidly consume memory.
- Never deploy a site into production with ``DEBUG`` turned on.
- DEBUG_PROPAGATE_EXCEPTIONS
- --------------------------
- .. versionadded:: 1.0
- Default: ``False``
- If set to True, Django's normal exception handling of view functions
- will be suppressed, and exceptions will propagate upwards. This can
- be useful for some test setups, and should never be used on a live
- site.
- .. setting:: DEFAULT_CHARSET
- DEFAULT_CHARSET
- ---------------
- Default: ``'utf-8'``
- Default charset to use for all ``HttpResponse`` objects, if a MIME type isn't
- manually specified. Used with ``DEFAULT_CONTENT_TYPE`` to construct the
- ``Content-Type`` header.
- .. setting:: DEFAULT_CONTENT_TYPE
- DEFAULT_CONTENT_TYPE
- --------------------
- Default: ``'text/html'``
- Default content type to use for all ``HttpResponse`` objects, if a MIME type
- isn't manually specified. Used with ``DEFAULT_CHARSET`` to construct the
- ``Content-Type`` header.
- .. setting:: DEFAULT_FROM_EMAIL
- DEFAULT_FILE_STORAGE
- --------------------
- Default: ``django.core.files.storage.FileSystemStorage``
- Default file storage class to be used for any file-related operations that don't
- specify a particular storage system. See :ref:`topics-files`.
- DEFAULT_FROM_EMAIL
- ------------------
- Default: ``'webmaster@localhost'``
- Default e-mail address to use for various automated correspondence from the
- site manager(s).
- .. setting:: DEFAULT_TABLESPACE
- DEFAULT_TABLESPACE
- ------------------
- .. versionadded:: 1.0
- Default: ``''`` (Empty string)
- Default tablespace to use for models that don't specify one, if the
- backend supports it.
- .. setting:: DEFAULT_INDEX_TABLESPACE
- DEFAULT_INDEX_TABLESPACE
- ------------------------
- .. versionadded:: 1.0
- Default: ``''`` (Empty string)
- Default tablespace to use for indexes on fields that don't specify
- one, if the backend supports it.
- .. setting:: DISALLOWED_USER_AGENTS
- DISALLOWED_USER_AGENTS
- ----------------------
- Default: ``()`` (Empty tuple)
- List of compiled regular expression objects representing User-Agent strings that
- are not allowed to visit any page, systemwide. Use this for bad robots/crawlers.
- This is only used if ``CommonMiddleware`` is installed (see
- :ref:`topics-http-middleware`).
- .. setting:: EMAIL_HOST
- EMAIL_HOST
- ----------
- Default: ``'localhost'``
- The host to use for sending e-mail.
- See also ``EMAIL_PORT``.
- .. setting:: EMAIL_HOST_PASSWORD
- EMAIL_HOST_PASSWORD
- -------------------
- Default: ``''`` (Empty string)
- Password to use for the SMTP server defined in ``EMAIL_HOST``. This setting is
- used in conjunction with ``EMAIL_HOST_USER`` when authenticating to the SMTP
- server. If either of these settings is empty, Django won't attempt
- authentication.
- See also ``EMAIL_HOST_USER``.
- .. setting:: EMAIL_HOST_USER
- EMAIL_HOST_USER
- ---------------
- Default: ``''`` (Empty string)
- Username to use for the SMTP server defined in ``EMAIL_HOST``. If empty,
- Django won't attempt authentication.
- See also ``EMAIL_HOST_PASSWORD``.
- .. setting:: EMAIL_PORT
- EMAIL_PORT
- ----------
- Default: ``25``
- Port to use for the SMTP server defined in ``EMAIL_HOST``.
- .. setting:: EMAIL_SUBJECT_PREFIX
- EMAIL_SUBJECT_PREFIX
- --------------------
- Default: ``'[Django] '``
- Subject-line prefix for e-mail messages sent with ``django.core.mail.mail_admins``
- or ``django.core.mail.mail_managers``. You'll probably want to include the
- trailing space.
- .. setting:: EMAIL_USE_TLS
- EMAIL_USE_TLS
- -------------
- .. versionadded:: 1.0
- Default: ``False``
- Whether to use a TLS (secure) connection when talking to the SMTP server.
- .. setting:: FILE_CHARSET
- FILE_CHARSET
- ------------
- .. versionadded:: 1.0
- Default: ``'utf-8'``
- The character encoding used to decode any files read from disk. This includes
- template files and initial SQL data files.
- .. setting:: FILE_UPLOAD_HANDLERS
- FILE_UPLOAD_HANDLERS
- --------------------
- .. versionadded:: 1.0
- Default::
- ("django.core.files.uploadhandler.MemoryFileUploadHandler",
- "django.core.files.uploadhandler.TemporaryFileUploadHandler",)
- A tuple of handlers to use for uploading. See :ref:`topics-files` for details.
- .. setting:: FILE_UPLOAD_MAX_MEMORY_SIZE
- FILE_UPLOAD_MAX_MEMORY_SIZE
- ---------------------------
- .. versionadded:: 1.0
- Default: ``2621440`` (i.e. 2.5 MB).
- The maximum size (in bytes) that an upload will be before it gets streamed to
- the file system. See :ref:`topics-files` for details.
- .. setting:: FILE_UPLOAD_TEMP_DIR
- FILE_UPLOAD_TEMP_DIR
- --------------------
- .. versionadded:: 1.0
- Default: ``None``
- The directory to store data temporarily while uploading files. If ``None``,
- Django will use the standard temporary directory for the operating system. For
- example, this will default to '/tmp' on \*nix-style operating systems.
- See :ref:`topics-files` for details.
- .. setting:: FILE_UPLOAD_PERMISSIONS
- FILE_UPLOAD_PERMISSIONS
- -----------------------
- Default: ``None``
- The numeric mode (i.e. ``0644``) to set newly uploaded files to. For
- more information about what these modes mean, see the `documentation for
- os.chmod`_
- If this isn't given or is ``None``, you'll get operating-system
- dependent behavior. On most platforms, temporary files will have a mode
- of ``0600``, and files saved from memory will be saved using the
- system's standard umask.
- .. warning::
- **Always prefix the mode with a 0.**
-
- If you're not familiar with file modes, please note that the leading
- ``0`` is very important: it indicates an octal number, which is the
- way that modes must be specified. If you try to use ``644``, you'll
- get totally incorrect behavior.
-
- .. _documentation for os.chmod: http://docs.python.org/lib/os-file-dir.html
- .. setting:: FIXTURE_DIRS
- FIXTURE_DIRS
- -------------
- Default: ``()`` (Empty tuple)
- List of locations of the fixture data files, in search order. Note that
- these paths should use Unix-style forward slashes, even on Windows. See
- :ref:`topics-testing`.
- FORCE_SCRIPT_NAME
- ------------------
- Default: ``None``
- If not ``None``, this will be used as the value of the ``SCRIPT_NAME``
- environment variable in any HTTP request. This setting can be used to override
- the server-provided value of ``SCRIPT_NAME``, which may be a rewritten version
- of the preferred value or not supplied at all.
- .. setting:: IGNORABLE_404_ENDS
- IGNORABLE_404_ENDS
- ------------------
- Default: ``('mail.pl', 'mailform.pl', 'mail.cgi', 'mailform.cgi', 'favicon.ico', '.php')``
- See also ``IGNORABLE_404_STARTS`` and ``Error reporting via e-mail``.
- .. setting:: IGNORABLE_404_STARTS
- IGNORABLE_404_STARTS
- --------------------
- Default: ``('/cgi-bin/', '/_vti_bin', '/_vti_inf')``
- A tuple of strings that specify beginnings of URLs that should be ignored by
- the 404 e-mailer. See ``SEND_BROKEN_LINK_EMAILS``, ``IGNORABLE_404_ENDS`` and
- the :ref:`howto-error-reporting`.
- .. setting:: INSTALLED_APPS
- INSTALLED_APPS
- --------------
- Default: ``()`` (Empty tuple)
- A tuple of strings designating all applications that are enabled in this Django
- installation. Each string should be a full Python path to a Python package that
- contains a Django application, as created by :djadmin:`django-admin.py startapp
- <startapp>`.
- .. setting:: INTERNAL_IPS
- INTERNAL_IPS
- ------------
- Default: ``()`` (Empty tuple)
- A tuple of IP addresses, as strings, that:
- * See debug comments, when ``DEBUG`` is ``True``
- * Receive X headers if the ``XViewMiddleware`` is installed (see
- :ref:`topics-http-middleware`)
- .. setting:: JING_PATH
- JING_PATH
- ---------
- Default: ``'/usr/bin/jing'``
- Path to the "Jing" executable. Jing is a RELAX NG validator, and Django uses it
- to validate each ``XMLField`` in your models.
- See http://www.thaiopensource.com/relaxng/jing.html .
- .. setting:: LANGUAGE_CODE
- LANGUAGE_CODE
- -------------
- Default: ``'en-us'``
- A string representing the language code for this installation. This should be in
- standard language format. For example, U.S. English is ``"en-us"``. See
- :ref:`topics-i18n`.
- .. setting:: LANGUAGE_COOKIE_NAME
- LANGUAGE_COOKIE_NAME
- --------------------
- .. versionadded:: 1.0
- Default: ``'django_language'``
- The name of the cookie to use for the language cookie. This can be whatever you
- want (but should be different from ``SESSION_COOKIE_NAME``). See
- :ref:`topics-i18n`.
- .. setting:: LANGUAGES
- LANGUAGES
- ---------
- Default: A tuple of all available languages. This list is continually growing
- and including a copy here would inevitably become rapidly out of date. You can
- see the current list of translated languages by looking in
- ``django/conf/global_settings.py`` (or view the `online source`_).
- .. _online source: http://code.djangoproject.com/browser/django/trunk/django/conf/global_settings.py
- The list is a tuple of two-tuples in the format (language code, language
- name) -- for example, ``('ja', 'Japanese')``. This specifies which languages
- are available for language selection. See :ref:`topics-i18n`.
- Generally, the default value should suffice. Only set this setting if you want
- to restrict language selection to a subset of the Django-provided languages.
- If you define a custom ``LANGUAGES`` setting, it's OK to mark the languages as
- translation strings (as in the default value displayed above) -- but use a
- "dummy" ``gettext()`` function, not the one in ``django.utils.translation``.
- You should *never* import ``django.utils.translation`` from within your
- settings file, because that module in itself depends on the settings, and that
- would cause a circular import.
- The solution is to use a "dummy" ``gettext()`` function. Here's a sample
- settings file::
- gettext = lambda s: s
- LANGUAGES = (
- ('de', gettext('German')),
- ('en', gettext('English')),
- )
- With this arrangement, ``django-admin.py makemessages`` will still find and
- mark these strings for translation, but the translation won't happen at
- runtime -- so you'll have to remember to wrap the languages in the *real*
- ``gettext()`` in any code that uses ``LANGUAGES`` at runtime.
- .. setting:: LOCALE_PATHS
- LOCALE_PATHS
- ------------
- Default: ``()`` (Empty tuple)
- A tuple of directories where Django looks for translation files.
- See :ref:`translations-in-your-own-projects`.
- .. setting:: LOGIN_REDIRECT_URL
- LOGIN_REDIRECT_URL
- ------------------
- .. versionadded:: 1.0
- Default: ``'/accounts/profile/'``
- The URL where requests are redirected after login when the
- ``contrib.auth.login`` view gets no ``next`` parameter.
- This is used by the :func:`~django.contrib.auth.decorators.login_required`
- decorator, for example.
- .. setting:: LOGIN_URL
- LOGIN_URL
- ---------
- .. versionadded:: 1.0
- Default: ``'/accounts/login/'``
- The URL where requests are redirected for login, specially when using the
- :func:`~django.contrib.auth.decorators.login_required` decorator.
- .. setting:: LOGOUT_URL
- LOGOUT_URL
- ----------
- .. versionadded:: 1.0
- Default: ``'/accounts/logout/'``
- LOGIN_URL counterpart.
- .. setting:: MANAGERS
- MANAGERS
- --------
- Default: ``()`` (Empty tuple)
- A tuple in the same format as ``ADMINS`` that specifies who should get
- broken-link notifications when ``SEND_BROKEN_LINK_EMAILS=True``.
- .. setting:: MEDIA_ROOT
- MEDIA_ROOT
- ----------
- Default: ``''`` (Empty string)
- Absolute path to the directory that holds media for this installation.
- Example: ``"/home/media/media.lawrence.com/"`` See also ``MEDIA_URL``.
- .. setting:: MEDIA_URL
- MEDIA_URL
- ---------
- Default: ``''`` (Empty string)
- URL that handles the media served from ``MEDIA_ROOT``.
- Example: ``"http://media.lawrence.com"``
- Note that this should have a trailing slash if it has a path component.
- Good: ``"http://www.example.com/static/"``
- Bad: ``"http://www.example.com/static"``
- .. setting:: MIDDLEWARE_CLASSES
- MIDDLEWARE_CLASSES
- ------------------
- Default::
- ("django.contrib.sessions.middleware.SessionMiddleware",
- "django.contrib.auth.middleware.AuthenticationMiddleware",
- "django.middleware.common.CommonMiddleware",
- "django.middleware.doc.XViewMiddleware")
- A tuple of middleware classes to use. See :ref:`topics-http-middleware`.
- .. setting:: MONTH_DAY_FORMAT
- MONTH_DAY_FORMAT
- ----------------
- Default: ``'F j'``
- The default formatting to use for date fields on Django admin change-list
- pages -- and, possibly, by other parts of the system -- in cases when only the
- month and day are displayed.
- For example, when a Django admin change-list page is being filtered by a date
- drilldown, the header for a given day displays the day and month. Different
- locales have different formats. For example, U.S. English would say
- "January 1," whereas Spanish might say "1 Enero."
- See :ttag:`allowed date format strings <now>`. See also ``DATE_FORMAT``,
- ``DATETIME_FORMAT``, ``TIME_FORMAT`` and ``YEAR_MONTH_FORMAT``.
- .. setting:: PREPEND_WWW
- PREPEND_WWW
- -----------
- Default: ``False``
- Whether to prepend the "www." subdomain to URLs that don't have it. This is only
- used if ``CommonMiddleware`` is installed (see :ref:`topics-http-middleware`).
- See also ``APPEND_SLASH``.
- .. setting:: PROFANITIES_LIST
- PROFANITIES_LIST
- ----------------
- A tuple of profanities, as strings, that will trigger a validation error when
- the ``hasNoProfanities`` validator is called.
- We don't list the default values here, because that would be profane. To see
- the default values, see the file ``django/conf/global_settings.py``.
- .. setting:: ROOT_URLCONF
- ROOT_URLCONF
- ------------
- Default: Not defined
- A string representing the full Python import path to your root URLconf. For example:
- ``"mydjangoapps.urls"``. Can be overridden on a per-request basis by
- setting the attribute ``urlconf`` on the incoming ``HttpRequest``
- object. See :ref:`how-django-processes-a-request` for details.
- .. setting:: SECRET_KEY
- SECRET_KEY
- ----------
- Default: ``''`` (Empty string)
- A secret key for this particular Django installation. Used to provide a seed in
- secret-key hashing algorithms. Set this to a random string -- the longer, the
- better. ``django-admin.py startproject`` creates one automatically.
- .. setting:: SEND_BROKEN_LINK_EMAILS
- SEND_BROKEN_LINK_EMAILS
- -----------------------
- Default: ``False``
- Whether to send an e-mail to the ``MANAGERS`` each time somebody visits a
- Django-powered page that is 404ed with a non-empty referer (i.e., a broken
- link). This is only used if ``CommonMiddleware`` is installed (see
- :ref:`topics-http-middleware`. See also ``IGNORABLE_404_STARTS``,
- ``IGNORABLE_404_ENDS`` and :ref:`howto-error-reporting`.
- .. setting:: SERIALIZATION_MODULES
- SERIALIZATION_MODULES
- ---------------------
- Default: Not defined.
- A dictionary of modules containing serializer definitions (provided as
- strings), keyed by a string identifier for that serialization type. For
- example, to define a YAML serializer, use::
- SERIALIZATION_MODULES = { 'yaml' : 'path.to.yaml_serializer' }
- .. setting:: SERVER_EMAIL
- SERVER_EMAIL
- ------------
- Default: ``'root@localhost'``
- The e-mail address that error messages come from, such as those sent to
- ``ADMINS`` and ``MANAGERS``.
- .. setting:: SESSION_ENGINE
- SESSION_ENGINE
- --------------
- .. versionadded:: 1.0
- Default: ``django.contrib.sessions.backends.db``
- Controls where Django stores session data. Valid values are:
- * ``'django.contrib.sessions.backends.db'``
- * ``'django.contrib.sessions.backends.file'``
- * ``'django.contrib.sessions.backends.cache'``
- See :ref:`topics-http-sessions`.
- .. setting:: SESSION_COOKIE_AGE
- SESSION_COOKIE_AGE
- ------------------
- Default: ``1209600`` (2 weeks, in seconds)
- The age of session cookies, in seconds. See :ref:`topics-http-sessions`.
- .. setting:: SESSION_COOKIE_DOMAIN
- SESSION_COOKIE_DOMAIN
- ---------------------
- Default: ``None``
- The domain to use for session cookies. Set this to a string such as
- ``".lawrence.com"`` for cross-domain cookies, or use ``None`` for a standard
- domain cookie. See the :ref:`topics-http-sessions`.
- .. setting:: SESSION_COOKIE_NAME
- SESSION_COOKIE_NAME
- -------------------
- Default: ``'sessionid'``
- The name of the cookie to use for sessions. This can be whatever you want (but
- should be different from ``LANGUAGE_COOKIE_NAME``). See the :ref:`topics-http-sessions`.
- .. setting:: SESSION_COOKIE_PATH
- SESSION_COOKIE_PATH
- -------------------
- .. versionadded:: 1.0
- Default: ``'/'``
- The path set on the session cookie. This should either match the URL path of your
- Django installation or be parent of that path.
- This is useful if you have multiple Django instances running under the same
- hostname. They can use different cookie paths, and each instance will only see
- its own session cookie.
- .. setting:: SESSION_COOKIE_SECURE
- SESSION_COOKIE_SECURE
- ---------------------
- Default: ``False``
- Whether to use a secure cookie for the session cookie. If this is set to
- ``True``, the cookie will be marked as "secure," which means browsers may
- ensure that the cookie is only sent under an HTTPS connection.
- See the :ref:`topics-http-sessions`.
- .. setting:: SESSION_EXPIRE_AT_BROWSER_CLOSE
- SESSION_EXPIRE_AT_BROWSER_CLOSE
- -------------------------------
- Default: ``False``
- Whether to expire the session when the user closes his or her browser.
- See the :ref:`topics-http-sessions`.
- .. setting:: SESSION_FILE_PATH
- SESSION_FILE_PATH
- -----------------
- .. versionadded:: 1.0
- Default: ``None``
- If you're using file-based session storage, this sets the directory in
- which Django will store session data. See :ref:`topics-http-sessions`. When
- the default value (``None``) is used, Django will use the standard temporary
- directory for the system.
- .. setting:: SESSION_SAVE_EVERY_REQUEST
- SESSION_SAVE_EVERY_REQUEST
- --------------------------
- Default: ``False``
- Whether to save the session data on every request. See
- :ref:`topics-http-sessions`.
- .. setting:: SITE_ID
- SITE_ID
- -------
- Default: Not defined
- The ID, as an integer, of the current site in the ``django_site`` database
- table. This is used so that application data can hook into specific site(s)
- and a single database can manage content for multiple sites.
- See :ref:`ref-contrib-sites`.
- .. _site framework docs: ../sites/
- .. setting:: TEMPLATE_CONTEXT_PROCESSORS
- TEMPLATE_CONTEXT_PROCESSORS
- ---------------------------
- Default::
- ("django.core.context_processors.auth",
- "django.core.context_processors.debug",
- "django.core.context_processors.i18n",
- "django.core.context_processors.media")
- A tuple of callables that are used to populate the context in ``RequestContext``.
- These callables take a request object as their argument and return a dictionary
- of items to be merged into the context.
- .. setting:: TEMPLATE_DEBUG
- TEMPLATE_DEBUG
- --------------
- Default: ``False``
- A boolean that turns on/off template debug mode. If this is ``True``, the fancy
- error page will display a detailed report for any ``TemplateSyntaxError``. This
- report contains the relevant snippet of the template, with the appropriate line
- highlighted.
- Note that Django only displays fancy error pages if ``DEBUG`` is ``True``, so
- you'll want to set that to take advantage of this setting.
- See also ``DEBUG``.
- .. setting:: TEMPLATE_DIRS
- TEMPLATE_DIRS
- -------------
- Default: ``()`` (Empty tuple)
- List of locations of the template source files, in search order. Note that
- these paths should use Unix-style forward slashes, even on Windows.
- See :ref:`topics-templates`..
- .. setting:: TEMPLATE_LOADERS
- TEMPLATE_LOADERS
- ----------------
- Default::
- ('django.template.loaders.filesystem.load_template_source',
- 'django.template.loaders.app_directories.load_template_source')
- A tuple of callables (as strings) that know how to import templates from
- various sources. See :ref:`ref-templates-api`.
- .. setting:: TEMPLATE_STRING_IF_INVALID
- TEMPLATE_STRING_IF_INVALID
- --------------------------
- Default: ``''`` (Empty string)
- Output, as a string, that the template system should use for invalid (e.g.
- misspelled) variables. See :ref:`invalid-template-variables`..
- .. setting:: TEST_DATABASE_CHARSET
- TEST_DATABASE_CHARSET
- ---------------------
- .. versionadded:: 1.0
- Default: ``None``
- The character set encoding used to create the test database. The value of this
- string is passed directly through to the database, so its format is
- backend-specific.
- Supported for the PostgreSQL_ (``postgresql``, ``postgresql_psycopg2``) and MySQL_ (``mysql``) backends.
- .. _PostgreSQL: http://www.postgresql.org/docs/8.2/static/multibyte.html
- .. _MySQL: http://www.mysql.org/doc/refman/5.0/en/charset-database.html
- .. setting:: TEST_DATABASE_COLLATION
- TEST_DATABASE_COLLATION
- ------------------------
- .. versionadded:: 1.0
- Default: ``None``
- The collation order to use when creating the test database. This value is
- passed directly to the backend, so its format is backend-specific.
- Only supported for the ``mysql`` backend (see `section 10.3.2`_ of the MySQL
- manual for details).
- .. _section 10.3.2: http://www.mysql.org/doc/refman/5.0/en/charset-database.html
- .. setting:: TEST_DATABASE_NAME
- TEST_DATABASE_NAME
- ------------------
- Default: ``None``
- The name of database to use when running the test suite.
- If the default value (``None``) is used with the SQLite database engine, the
- tests will use a memory resident database. For all other database engines the
- test database will use the name ``'test_' + settings.DATABASE_NAME``.
- See :ref:`topics-testing`.
- .. setting:: TEST_RUNNER
- TEST_RUNNER
- -----------
- Default: ``'django.test.simple.run_tests'``
- The name of the method to use for starting the test suite. See
- :ref:`topics-testing`.
- .. _Testing Django Applications: ../testing/
- .. setting:: TIME_FORMAT
- TIME_FORMAT
- -----------
- Default: ``'P'`` (e.g. ``4 p.m.``)
- The default formatting to use for time fields on Django admin change-list
- pages -- and, possibly, by other parts of the system. See
- :ttag:`allowed date format strings <now>`.
- See also ``DATE_FORMAT``, ``DATETIME_FORMAT``, ``TIME_FORMAT``,
- ``YEAR_MONTH_FORMAT`` and ``MONTH_DAY_FORMAT``.
- .. setting:: TIME_ZONE
- TIME_ZONE
- ---------
- Default: ``'America/Chicago'``
- A string representing the time zone for this installation. `See available choices`_.
- (Note that list of available choices lists more than one on the same line;
- you'll want to use just one of the choices for a given time zone. For instance,
- one line says ``'Europe/London GB GB-Eire'``, but you should use the first bit
- of that -- ``'Europe/London'`` -- as your ``TIME_ZONE`` setting.)
- Note that this is the time zone to which Django will convert all dates/times --
- not necessarily the timezone of the server. For example, one server may serve
- multiple Django-powered sites, each with a separate time-zone setting.
- Normally, Django sets the ``os.environ['TZ']`` variable to the time zone you
- specify in the ``TIME_ZONE`` setting. Thus, all your views and models will
- automatically operate in the correct time zone. However, if you're using the
- manual configuration option (see below), Django will *not* touch the ``TZ``
- environment variable, and it'll be up to you to ensure your processes are
- running in the correct environment.
- .. note::
- Django cannot reliably use alternate time zones in a Windows environment.
- If you're running Django on Windows, this variable must be set to match the
- system timezone.
-
- .. _See available choices: http://www.postgresql.org/docs/8.1/static/datetime-keywords.html#DATETIME-TIMEZONE-SET-TABLE
- .. setting:: URL_VALIDATOR_USER_AGENT
- URL_VALIDATOR_USER_AGENT
- ------------------------
- Default: ``Django/<version> (http://www.djangoproject.com/)``
- The string to use as the ``User-Agent`` header when checking to see if URLs
- exist (see the ``verify_exists`` option on :class:`~django.db.models.URLField`).
- .. setting:: USE_ETAGS
- USE_ETAGS
- ---------
- Default: ``False``
- A boolean that specifies whether to output the "Etag" header. This saves
- bandwidth but slows down performance. This is only used if ``CommonMiddleware``
- is installed (see :ref:`topics-http-middleware`).
- .. setting:: USE_I18N
- USE_I18N
- --------
- Default: ``True``
- A boolean that specifies whether Django's internationalization system should be
- enabled. This provides an easy way to turn it off, for performance. If this is
- set to ``False``, Django will make some optimizations so as not to load the
- internationalization machinery.
- .. setting:: YEAR_MONTH_FORMAT
- YEAR_MONTH_FORMAT
- -----------------
- Default: ``'F Y'``
- The default formatting to use for date fields on Django admin change-list
- pages -- and, possibly, by other parts of the system -- in cases when only the
- year and month are displayed.
- For example, when a Django admin change-list page is being filtered by a date
- drilldown, the header for a given month displays the month and the year.
- Different locales have different formats. For example, U.S. English would say
- "January 2006," whereas another locale might say "2006/January."
- See :ttag:`allowed date format strings <now>`. See also ``DATE_FORMAT``,
- ``DATETIME_FORMAT``, ``TIME_FORMAT`` and ``MONTH_DAY_FORMAT``.
|