Integrando o Django com banco de dados legados

Enquanto o Django é melhor para desenvolver novas aplicações, é possível integrá-lo a um banco de dados existente. O Django inclue algumas ferramentas para automatzar tanto quanto possível o processo.

Este documento assume que você conhece o básico de django, como coberto em tutorial.

Uma vez que tenha o Django configurado, seguirá este processo geral para integrar com o banco de dados existente.

Forneça ao Django os parâmetros do seu banco de dados.

Você precisa informar ao Django quais são ps parâmetros de conexão do seu banco de dados, e o nome do banco de dados. Faça isso editando a definição DATABASES e assinalando os valores das seguintes chaver para a conexão 'default':

Criar automaticamente os modelos

O Django vem com uma ferramenta chamada inspectdb que pode criar os modelos introspectando o banco de dados existente. Você pode verificar a saida rodando este comando:

$ python manage.py inspectdb

Salve isso como um arquivo usando o redirecionamento padrão d3 saída Unix.

$ python manage.py inspectdb > models.py

Este comandoé um atalho, não um gerador de modelos definitivos. Veja o documentation of inspectdb para mais informações.

Uma vez que tenha limpado seus modelos, nomeie arquivo ``models.py``e coloque-o no pacote Python que contém sua aplicação. Entã adicione a app dentro da sua definição de INSTALLED_APPS.

Por padrão, o inspectdb cria modelos não gerenciáveis. Quer dizer, managed = False na Meta classe do modelo, diz ao Django para não gerenciar a criação, modificação e deleção de cada tabela:

class Person(models.Model):
    id = models.IntegerField(primary_key=True)
    first_name = models.CharField(max_length=70)
    class Meta:
       managed = False
       db_table = 'CENSUS_PERSONS'

If you do want to allow Django to manage the table’s lifecycle, you’ll need to change the managed option above to True (or remove it because True is its default value).

Instalando as Tabelas do núcleo do Django.

A seguir, execute o comando migrate para instalar qualquer registro necessário de banco de dados tal como permissões do admin e tipos de conteúdo:

$ python manage.py migrate

Teste e ajustes

Estes são os passos básicos – daqui em diante você irá querer ajustar os modelos que o Django gerou até que funcionem do jeito que você goste. Tente acessar seus dados através da API de banco de dados do Django, e tente editá-los via o site admin do Django, e edite o arquivo de modelo de acordo.

Back to Top