mirror of
https://github.com/django/django.git
synced 2024-12-27 03:25:58 +00:00
ae35d5178b
Backport of 0d5e9a32eb
from main
91 lines
3.7 KiB
Plaintext
91 lines
3.7 KiB
Plaintext
=================
|
|
FAQ: Installation
|
|
=================
|
|
|
|
How do I get started?
|
|
=====================
|
|
|
|
#. `Download the code`_.
|
|
#. Install Django (read the :doc:`installation guide </intro/install>`).
|
|
#. Walk through the :doc:`tutorial </intro/tutorial01>`.
|
|
#. Check out the rest of the :doc:`documentation </index>`, and `ask questions`_ if you
|
|
run into trouble.
|
|
|
|
.. _`Download the code`: https://www.djangoproject.com/download/
|
|
.. _ask questions: https://www.djangoproject.com/community/
|
|
|
|
What are Django's prerequisites?
|
|
================================
|
|
|
|
Django requires Python. See the table in the next question for the versions of
|
|
Python that work with each version of Django. Other Python libraries may be
|
|
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.
|
|
|
|
Django comes with its own :djadmin:`lightweight development server<runserver>`.
|
|
For a production environment, Django follows the WSGI spec, :pep:`3333`, which
|
|
means it can run on a variety of web servers. See :doc:`Deploying Django
|
|
</howto/deployment/index>` for more information.
|
|
|
|
Django runs `SQLite`_ by default, which is included in Python installations.
|
|
For a production environment, we recommend PostgreSQL_; but we also officially
|
|
support MariaDB_, MySQL_, `SQLite`_, and Oracle_. See :doc:`Supported Databases
|
|
</ref/databases>` for more information.
|
|
|
|
.. _Python: https://www.python.org/
|
|
.. _PostgreSQL: https://www.postgresql.org/
|
|
.. _MariaDB: https://mariadb.org/
|
|
.. _MySQL: https://www.mysql.com/
|
|
.. _`SQLite`: https://www.sqlite.org/
|
|
.. _Oracle: https://www.oracle.com/
|
|
|
|
.. _faq-python-version-support:
|
|
|
|
What Python version can I use with Django?
|
|
==========================================
|
|
|
|
============== ===============
|
|
Django version Python versions
|
|
============== ===============
|
|
3.2 3.6, 3.7, 3.8, 3.9, 3.10 (added in 3.2.9)
|
|
4.0 3.8, 3.9, 3.10
|
|
4.1 3.8, 3.9, 3.10, 3.11 (added in 4.1.3)
|
|
4.2 3.8, 3.9, 3.10, 3.11, 3.12 (added in 4.2.8)
|
|
5.0 3.10, 3.11, 3.12
|
|
============== ===============
|
|
|
|
For each version of Python, only the latest micro release (A.B.C) is officially
|
|
supported. You can find the latest micro version for each series on the `Python
|
|
download page <https://www.python.org/downloads/>`_.
|
|
|
|
Typically, we will support a Python version up to and including the first
|
|
Django LTS release whose security support ends after security support for that
|
|
version of Python ends. For example, Python 3.9 security support ends in
|
|
October 2025 and Django 4.2 LTS security support ends in April 2026. Therefore
|
|
Django 4.2 is the last version to support Python 3.9.
|
|
|
|
What Python version should I use with Django?
|
|
=============================================
|
|
|
|
Since newer versions of Python are often faster, have more features, and are
|
|
better supported, the latest version of Python 3 is recommended.
|
|
|
|
You don't lose anything in Django by using an older release, but you don't take
|
|
advantage of the improvements and optimizations in newer Python releases.
|
|
Third-party applications for use with Django are free to set their own version
|
|
requirements.
|
|
|
|
Should I use the stable version or development version?
|
|
=======================================================
|
|
|
|
Generally, if you're using code in production, you should be using a
|
|
stable release. The Django project publishes a full stable release
|
|
every eight months or so, with bugfix updates in between. These stable
|
|
releases contain the API that is covered by our backwards
|
|
compatibility guarantees; if you write code against stable releases,
|
|
you shouldn't have any problems upgrading when the next official
|
|
version is released.
|