mirror of
				https://github.com/django/django.git
				synced 2025-10-26 07:06:08 +00:00 
			
		
		
		
	git-svn-id: http://code.djangoproject.com/svn/django/trunk@16007 bcc190cf-cafb-0310-a4f2-bffc1f526a37
		
			
				
	
	
		
			116 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			5.1 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`: http://www.djangoproject.com/download/
 | |
| .. _ask questions: http://www.djangoproject.com/community/
 | |
| 
 | |
| What are Django's prerequisites?
 | |
| --------------------------------
 | |
| 
 | |
| Django requires Python_, specifically any version of Python from 2.4
 | |
| through 2.7. No other Python libraries are required for basic Django
 | |
| usage.
 | |
| 
 | |
| For a development environment -- if you just want to experiment with Django --
 | |
| you don't need to have a separate Web server installed; Django comes with its
 | |
| own lightweight development server. For a production environment, Django
 | |
| follows the WSGI_ spec, which means it can run on a variety of server
 | |
| platforms.  See :doc:`Deploying Django </howto/deployment/index>` for some
 | |
| popular alternatives.  Also, the `server arrangements wiki page`_ contains
 | |
| details for several deployment strategies.
 | |
| 
 | |
| If you want to use Django with a database, which is probably the case, you'll
 | |
| also need a database engine. PostgreSQL_ is recommended, because we're
 | |
| PostgreSQL fans, and MySQL_, `SQLite 3`_, and Oracle_ are also supported.
 | |
| 
 | |
| .. _Python: http://www.python.org/
 | |
| .. _WSGI: http://www.python.org/dev/peps/pep-0333/
 | |
| .. _server arrangements wiki page: http://code.djangoproject.com/wiki/ServerArrangements
 | |
| .. _PostgreSQL: http://www.postgresql.org/
 | |
| .. _MySQL: http://www.mysql.com/
 | |
| .. _`SQLite 3`: http://www.sqlite.org/
 | |
| .. _Oracle: http://www.oracle.com/
 | |
| 
 | |
| Do I lose anything by using Python 2.4 versus newer Python versions, such as Python 2.5 or 2.6?
 | |
| -----------------------------------------------------------------------------------------------
 | |
| 
 | |
| Not in the core framework. Currently, Django itself officially supports any
 | |
| version of Python from 2.4 through 2.7, inclusive. However, newer versions of
 | |
| Python are often faster, have more features, and are better supported. If you
 | |
| use a newer version of Python you will also have access to some APIs that
 | |
| aren't available under older versions of Python. For example Django provides
 | |
| some `context managers`_ for various operations. If you use Python 2.4 you
 | |
| won't be able to use them, however other APIs which provide the same
 | |
| functionality are always made available.
 | |
| 
 | |
| Third-party applications for use with Django are, of course, free to set their
 | |
| own version requirements.
 | |
| 
 | |
| Over the next year or two Django will begin dropping support for older Python
 | |
| versions as part of a migration which will end with Django running on Python 3
 | |
| (see below for details).
 | |
| 
 | |
| All else being equal, we recommend that you use the latest 2.x release
 | |
| (currently Python 2.7). This will let you take advantage of the numerous
 | |
| improvements and optimizations to the Python language since version 2.4, and
 | |
| will help ease the process of dropping support for older Python versions on
 | |
| the road to Python 3.
 | |
| 
 | |
| .. _context managers: http://docs.python.org/reference/datamodel.html#context-managers
 | |
| 
 | |
| Can I use Django with Python 2.4?
 | |
| ---------------------------------
 | |
| 
 | |
| As of Django 1.4, no.
 | |
| 
 | |
| Django 1.3 and earlier supported Python 2.4. Django 1.4 (the current development
 | |
| version, which hasn't been officially released) and newer version require
 | |
| Python 2.5 or greater (but not 3.x; see the next question.)
 | |
| 
 | |
| We highly recommend you upgrade Python if possible, but Django 1.3.x will
 | |
| continue to support Python 2.4.
 | |
| 
 | |
| Can I use Django with Python 3?
 | |
| -------------------------------
 | |
| 
 | |
| Not at the moment. Python 3.0 introduced a number of
 | |
| backwards-incompatible changes to the Python language, and although
 | |
| these changes are generally a good thing for Python's future, it will
 | |
| be a while before most Python software catches up and is able to run
 | |
| on Python 3.0. For larger Python-based software like Django, the
 | |
| transition is expected to take at least a year or two (since it
 | |
| involves dropping support for older Python releases and so must be
 | |
| done gradually).
 | |
| 
 | |
| In the meantime, Python 2.x releases will be supported and provided
 | |
| with bug fixes and security updates by the Python development team, so
 | |
| continuing to use a Python 2.x release during the transition should
 | |
| not present any risk.
 | |
| 
 | |
| Will Django run under shared hosting (like TextDrive or Dreamhost)?
 | |
| -------------------------------------------------------------------
 | |
| 
 | |
| See our `Django-friendly Web hosts`_ page.
 | |
| 
 | |
| .. _`Django-friendly Web hosts`: http://code.djangoproject.com/wiki/DjangoFriendlyWebHosts
 | |
| 
 | |
| 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 nine 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.
 |