mirror of
				https://github.com/django/django.git
				synced 2025-11-04 05:35:37 +00:00 
			
		
		
		
	django-admin/. This will avoid problems with missing HTTP redirects in future historical documents. Refs #3992. git-svn-id: http://code.djangoproject.com/svn/django/trunk@5040 bcc190cf-cafb-0310-a4f2-bffc1f526a37
		
			
				
	
	
		
			69 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
	
		
			2.2 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
==================================
 | 
						|
Integrating with a legacy database
 | 
						|
==================================
 | 
						|
 | 
						|
While Django is best suited for developing new applications, it's quite
 | 
						|
possible to integrate it into legacy databases. Django includes a couple of
 | 
						|
utilities to automate as much of this process as possible.
 | 
						|
 | 
						|
This document assumes you know the Django basics, as covered in the
 | 
						|
`official tutorial`_.
 | 
						|
 | 
						|
.. _official tutorial: ../tutorial01/
 | 
						|
 | 
						|
Give Django your database parameters
 | 
						|
====================================
 | 
						|
 | 
						|
You'll need to tell Django what your database connection parameters are, and
 | 
						|
what the name of the database is. Do that by editing these settings in your
 | 
						|
`settings file`_:
 | 
						|
 | 
						|
    * `DATABASE_NAME`
 | 
						|
    * `DATABASE_ENGINE`_
 | 
						|
    * `DATABASE_USER`_
 | 
						|
    * `DATABASE_PASSWORD`_
 | 
						|
    * `DATABASE_HOST`_
 | 
						|
    * `DATABASE_PORT`_
 | 
						|
 | 
						|
.. _settings file: ../settings/
 | 
						|
.. _DATABASE_NAME: ../settings/#database-name
 | 
						|
.. _DATABASE_ENGINE: ../settings/#database-engine
 | 
						|
.. _DATABASE_USER: ../settings/#database-user
 | 
						|
.. _DATABASE_PASSWORD: ../settings/#database-password
 | 
						|
.. _DATABASE_HOST: ../settings/#database-host
 | 
						|
.. _DATABASE_PORT: ../settings/#database-port
 | 
						|
 | 
						|
Auto-generate the models
 | 
						|
========================
 | 
						|
 | 
						|
Django comes with a utility that can create models by introspecting an existing
 | 
						|
database. You can view the output by running this command::
 | 
						|
 | 
						|
    python manage.py inspectdb
 | 
						|
 | 
						|
Save this as a file by using standard Unix output redirection::
 | 
						|
 | 
						|
    python manage.py inspectdb > models.py
 | 
						|
 | 
						|
This feature is meant as a shortcut, not as definitive model generation. See
 | 
						|
the `django-admin.py documentation`_ for more information.
 | 
						|
 | 
						|
Once you've cleaned up your models, name the file ``models.py`` and put it in
 | 
						|
the Python package that holds your app. Then add the app to your
 | 
						|
``INSTALLED_APPS`` setting.
 | 
						|
 | 
						|
.. _django-admin.py documentation: ../django-admin/
 | 
						|
 | 
						|
Install the core Django tables
 | 
						|
==============================
 | 
						|
 | 
						|
Next, run the ``manage.py syncdb`` command to install any extra needed database
 | 
						|
records such as admin permissions and content types::
 | 
						|
 | 
						|
    python manage.py syncdb
 | 
						|
 | 
						|
See whether it worked
 | 
						|
=====================
 | 
						|
 | 
						|
That's it. Try accessing your data via the Django database API, and try editing
 | 
						|
objects via Django's admin site.
 |