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.