Cómo crear una nueva aplicación Django usando modelos de otra aplicación Django para usar la misma base de datos

En caso de que intente crear una aplicación sobre una base de datos heredada, eche un vistazo a Integración de Django con una base de datos heredada (documentos de Django). Su sección “Generar automáticamente los modelos” muestra algunos ejemplos y enlaces a información detallada sobre la utilidad “inspectdb”.

Pasos para generar automáticamente modelos desde una base de datos:

  • Comience un nuevo proyecto. Eche un vistazo a Escribir su primera aplicación Django, parte 1
  • Defina configuraciones (señale la base de datos con la que desea trabajar)
  • Para generar automáticamente modelos de las tablas de su base de datos y escribirlos en el archivo models.py , ejecute python manage.py inspectdb > models.py
  • Limpie models.py. recién creados models.py. En mi caso, tendré que arreglar ForeignKeys y dividir mis modelos en varios archivos. A continuación se muestra un ejemplo de un modelo, generado a partir de la base de datos de Joomla:

clase TstK2Rating (models.Model):
itemid = models.IntegerField (db_column = ‘itemID’, primary_key = True)
rating_sum = models.IntegerField ()
rating_count = models.IntegerField ()
lastip = models.CharField (max_length = 50)
clase Meta:
gestionado = falso
db_table = ‘tst_k2_rating’

  • Inicie una aplicación python manage.py startapp yourapp
  • Reemplace models.py recién creados con el que ha llenado automáticamente con modelos. Ejecute python manage.py migrate para obtener cosas de Django creadas en DB. Ahora estás listo para escribir todo desde cero.

Espero que esto responda a su pregunta.

Faltan algunos detalles de su pregunta, pero dado lo que hay aquí, aquí está mi idea de un plan:

  1. Cree la nueva aplicación usando django-admin startapp newapp
  2. Copie el archivo models.py de la aplicación anterior y reemplace el stub models.py en su nueva aplicación con él.
  3. Ejecute django-admin migrate para crear las nuevas tablas de la aplicación (que tendrán el mismo esquema que las anteriores porque están usando los mismos modelos, pero tendrán nuevos nombres porque el nombre de la aplicación es diferente)
  4. Realice toda su codificación de “reescritura desde cero” (vistas, patrones de URL, cualquier otra cosa que se necesite)
  5. … ¡lucro!

Una pieza en la que tendrá que pensar un poco es el cambio. ¿Le dice a la nueva aplicación que use las tablas de la aplicación anterior? ¿Volcar los datos de las tablas antiguas y cargarlas en las nuevas? Tu llamada.