Như @NalinDobhal đề cập trong các nhận xét:
Theo tôi thấy, bạn có 2 lựa chọn:
- Cài đặt SpatiaLite và tiếp tục sử dụng SQLite cho dự án của bạn, cho phép các kiểu không gian trong DB hiện có của bạn ( làm theo Hướng dẫn GeoDjango đã được tài liệu hóa về vấn đề này )
- Giải pháp Ưa thích: Di chuyển SQLite DB hiện có của bạn sang PostgreSQL và bật PostGIS. Bạn có thể đọc tuyệt vời về lý do tại sao điều này được ưu tiên và cách thực hiện di chuyển chính xác thông qua Django trong bài viết này .
Câu chuyện ngắn cho quy trình ưa thích:
-
Tạo một kết xuất DB của DB hiện có:
python manage.py dumpdata > datadump.json
-
Nhập Django Shell và xóa
ContentType
hiện có dữ liệupython manage.py shell >>> from django.contrib.contenttypes.models import ContentType >>> ContentType.objects.all().delete() >>> quit()
-
Tải tệp kết xuất vào DB PostgreSQL:
python manage.py loaddata datadump.json
Lưu ý: Quá trình di chuyển này không chỉ dành riêng cho SQLite sang PostgreSQL và có thể được sử dụng trong hầu hết mọi lần di chuyển giữa các DB (mà tôi biết là ATM).