A partire da Django 1.10, puoi semplicemente nominare una singola vista come parametro del tuo inspectdb
comando:
python well/manage.py inspectdb hospitalizations_over_30_days
Il valore predefinito inspectdb
produrrà solo models.py per le tabelle, ma i modelli per le viste possono essere generati individualmente nominandoli.
In Django 2.1 e versioni successive, se vuoi inspectdb
per generare modelli per tutte le tabelle e views, usa inspectdb --include-views
opzione, che io contribuito a Django 2.1
come risultato di questa domanda!
python well/manage.py inspectdb --include-views
Per generare modelli sia per le tabelle che per le viste in Django 2.0 e precedenti, devi modificare il codice sorgente di Django. In Django 2.0, cambia riga 57 in django/core/management/commands/inspectdb.py
a:
tables_to_introspect = options['table'] or connection.introspection.table_names(cursor=cursor, include_views=True)
Fai attenzione che i modelli generati non avranno campi con primary_key=True
impostato, dovrai aggiungere manualmente le chiavi primarie.