Kể từ Django 1.10, bạn có thể chỉ cần đặt tên một chế độ xem riêng lẻ làm tham số cho inspectdb
của mình lệnh:
python well/manage.py inspectdb hospitalizations_over_30_days
inspectdb
mặc định sẽ chỉ xuất ra các model.py cho các bảng, nhưng các mô hình cho các khung nhìn có thể được tạo riêng lẻ bằng cách đặt tên cho chúng.
Trong Django 2.1 trở lên, nếu bạn muốn inspectdb
để tạo mô hình cho tất cả các bảng và lượt xem, sử dụng inspectdb --include-views
tùy chọn mà tôi đã đóng góp cho Django 2.1
là kết quả của câu hỏi này!
python well/manage.py inspectdb --include-views
Để tạo mô hình cho cả bảng và dạng xem trong Django 2.0 trở xuống, bạn phải chỉnh sửa mã nguồn Django. Trong Django 2.0, thay đổi line 57 trong django/core/management/commands/inspectdb.py
tới:
tables_to_introspect = options['table'] or connection.introspection.table_names(cursor=cursor, include_views=True)
Lưu ý rằng các mô hình được tạo sẽ không có các trường với primary_key=True
đặt, bạn sẽ cần thêm các khóa chính theo cách thủ công.