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.