PageRenderTime 34ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

Plain Text | 110 lines | 86 code | 24 blank | 0 comment | 0 complexity | 46c9233363003d096a075861ee5b7ef4 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. FAQ: Installation
  2. =================
  3. How do I get started?
  4. ---------------------
  5. #. `Download the code`_.
  6. #. Install Django (read the :doc:`installation guide </intro/install>`).
  7. #. Walk through the :doc:`tutorial </intro/tutorial01>`.
  8. #. Check out the rest of the :doc:`documentation </index>`, and `ask questions`_ if you
  9. run into trouble.
  10. .. _`Download the code`:
  11. .. _ask questions:
  12. What are Django's prerequisites?
  13. --------------------------------
  14. Django requires Python_, specifically any version of Python from 2.4
  15. through 2.7. No other Python libraries are required for basic Django
  16. usage.
  17. For a development environment -- if you just want to experiment with Django --
  18. you don't need to have a separate Web server installed; Django comes with its
  19. own lightweight development server. For a production environment, Django
  20. follows the WSGI_ spec, which means it can run on a variety of server
  21. platforms. See :doc:`Deploying Django </howto/deployment/index>` for some
  22. popular alternatives. Also, the `server arrangements wiki page`_ contains
  23. details for several deployment strategies.
  24. If you want to use Django with a database, which is probably the case, you'll
  25. also need a database engine. PostgreSQL_ is recommended, because we're
  26. PostgreSQL fans, and MySQL_, `SQLite 3`_, and Oracle_ are also supported.
  27. .. _Python:
  28. .. _WSGI:
  29. .. _server arrangements wiki page:
  30. .. _PostgreSQL:
  31. .. _MySQL:
  32. .. _`SQLite 3`:
  33. .. _Oracle:
  34. Do I lose anything by using Python 2.4 versus newer Python versions, such as Python 2.5 or 2.6?
  35. -----------------------------------------------------------------------------------------------
  36. Not in the core framework. Currently, Django itself officially supports any
  37. version of Python from 2.4 through 2.7, inclusive. However, newer versions of
  38. Python are often faster, have more features, and are better supported. If you
  39. use a newer version of Python you will also have access to some APIs that
  40. aren't available under older versions of Python. For example Django provides
  41. some `context managers`_ for various operations. If you use Python 2.4 you
  42. won't be able to use them, however other APIs which provide the same
  43. functionality are always made available.
  44. Third-party applications for use with Django are, of course, free to set their
  45. own version requirements.
  46. Over the next year or two Django will begin dropping support for older Python
  47. versions as part of a migration which will end with Django running on Python 3
  48. (see below for details).
  49. All else being equal, we recommend that you use the latest 2.x release
  50. (currently Python 2.7). This will let you take advantage of the numerous
  51. improvements and optimizations to the Python language since version 2.4, and
  52. will help ease the process of dropping support for older Python versions on
  53. the road to Python 3.
  54. .. _context managers:
  55. Can I use Django with Python 2.3?
  56. ---------------------------------
  57. Django 1.1 (and earlier) supported Python 2.3. Django 1.2 and newer does not.
  58. We highly recommend you upgrade Python if at all possible, but Django 1.1 will
  59. continue to work on Python 2.3.
  60. Can I use Django with Python 3?
  61. -------------------------------
  62. Not at the moment. Python 3.0 introduced a number of
  63. backwards-incompatible changes to the Python language, and although
  64. these changes are generally a good thing for Python's future, it will
  65. be a while before most Python software catches up and is able to run
  66. on Python 3.0. For larger Python-based software like Django, the
  67. transition is expected to take at least a year or two (since it
  68. involves dropping support for older Python releases and so must be
  69. done gradually).
  70. In the meantime, Python 2.x releases will be supported and provided
  71. with bug fixes and security updates by the Python development team, so
  72. continuing to use a Python 2.x release during the transition should
  73. not present any risk.
  74. Will Django run under shared hosting (like TextDrive or Dreamhost)?
  75. -------------------------------------------------------------------
  76. See our `Django-friendly Web hosts`_ page.
  77. .. _`Django-friendly Web hosts`:
  78. Should I use the stable version or development version?
  79. -------------------------------------------------------
  80. Generally, if you're using code in production, you should be using a
  81. stable release. The Django project publishes a full stable release
  82. every nine months or so, with bugfix updates in between. These stable
  83. releases contain the API that is covered by our backwards
  84. compatibility guarantees; if you write code against stable releases,
  85. you shouldn't have any problems upgrading when the next official
  86. version is released.