Ab Django 1.10 können Sie Ihrer inspectdb einfach eine einzelne Ansicht als Parameter benennen Befehl:
python well/manage.py inspectdb hospitalizations_over_30_days
Die standardmäßige inspectdb gibt nur models.py für Tabellen aus, aber Modelle für Ansichten können individuell generiert werden, indem sie benannt werden.
In Django 2.1 und höher, wenn Sie inspectdb möchten um Modelle für alle Tabellen und zu generieren Ansichten, verwenden Sie den inspectdb --include-views
Option, die ich zu Django 2.1 beigetragen
habe als Ergebnis dieser Frage!
python well/manage.py inspectdb --include-views
Um Modelle für Tabellen und Ansichten in Django 2.0 und niedriger zu generieren, müssen Sie den Django-Quellcode bearbeiten. Ändern Sie in Django 2.0 Zeile 57 in django/core/management/commands/inspectdb.py
zu:
tables_to_introspect = options['table'] or connection.introspection.table_names(cursor=cursor, include_views=True)
Beachten Sie, dass die generierten Modelle keine Felder mit primary_key=True enthalten gesetzt, müssen Sie Primärschlüssel manuell hinzufügen.