1
resposta

Pegar tabelas específicas em um banco legado com Django

Tenho um banco já existente e não preciso importar todas as tabelas para o meu modelo utilizado o inspectdb, tem algum comando específico para importar apenas as tabelas criadas que preciso no meu models.py?

1 resposta

Olá Sílvio, tudo bem com você?

Peço desculpas pela demora em lhe responder.

Inicialmente devemos configurar nosso arquivo setting.py para que o Django possa acessar o banco de dados. Informando essa configuração na constante DATABASES, abaixo os campos necessários.

DATABASES= {
    'default': {
        'ENGINE': ' ',
        'NAME': ' ',
        'USER':' ',
        'PASSWORD':' ',
        'HOST':' ',
        'DATABASE_PORT': ' ',
    }
}

Após realizada a configuração para comunicação com o servidor, podermos realizar a coleta de tabelas específicas em um banco de dados, basta informarmos os nomes das tabelas. Usaremos a seguinte sintaxe.

python manage.py inspectdb nomes_das_tabelas > models.py

A separação entre os nomes das tabelas será feita com um espaço entre os nomes.

Considerando por exemplo que queremos buscar em um banco de dados as tabelas receitas_receita e pessoas_pessoa e queremos que essas tabelas sejam salvas em um arquivo com o nome models.py. usaremos o seguinte comando no terminal aberto em nossa pasta do projeto.

python manage.py inspectdb receitas_receita pessoas_pessoa > models.py

A saída resultará em um arquivo de nome models.py contendo as duas telas.

Fico à disposição em caso de dúvidas.

Abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!