Home Foros Foro dudas Foro Python Django trabajo con base de datos existente Respuesta a: Django trabajo con base de datos existente

Respuesta a: Django trabajo con base de datos existente

Home Foros Foro dudas Foro Python Django trabajo con base de datos existente Respuesta a: Django trabajo con base de datos existente

#11315

Antonio
Participante

Me voy a responder a mi mismo.

He seguido unas instrucciones que vienen aqui:

https://uniwebsidad.com/libros/django-1-0/capitulo-16/integracion-con-una-base-de-datos-existente

Todo perfecto.

Los pasos que he seguido, los resumo aquí:

– cambiar settings para configurar el apartado DATABASES, apuntando a mi BD existente PostgreSQL

– crear la aplicacion (por ejemplo myapp) y registrarla en settings

– ejecutar el comando: python manage.py inspectdb > myapp\models.py

con esto se va a crear el fichero models.py para la aplicacion. este fichero es posible que haya que depurarlo. en mi caso, con PostgreSQL, el único problema que me ha dado es con los campos autoincrement.

– python manage.py makemigrations

– python manage.py migrate

makemigrations dará errores si hay algo mal, en mi caso como decía antes, los autoincrement, pero nada más.

y listos, todo perfecto. no borra ningun datos, ni nada. además crea las tablas de admin, auth, etc en la bas de datos, pero lo que había, sigue estando ahí.

en ese enlace no lo pone, pero buscando en la doc de django y mirando el models.py generado, creo que la cuestion está en la clase meta que crea para cada clase de las tablas:

class Meta:
managed = False
db_table = ‘nombretablat’

Ese managed=False, es el que hace que en la base de datos, ni se cree ni se borre nada

Espero que esto le sirva a alguien para algo.

Gracias.