#python #django #postgresql #postgis #geodjango
Вопрос:
Поэтому сначала я попытался создать model
использование model
, из django.contrib.gis.db
которого возникла ошибка, касающаяся GDAL (есть много сообщений об этом и о том, как это решить, и я уже это сделал).
После установки необходимых файлов для GDAL я также добавил базу данных postgres в свой проект django.
Поскольку используемая мной модель используется в том случае, если мы имеем дело с геоДжанго (или просто местоположением), но геоДжанго можно использовать и без этого.
Я имею в виду, что нет связи между нашей базой данных и GeoDjango, так как мы можем просто применять функции, такие как geodesic, geocoders
etc, без каких-либо ошибок(пожалуйста, поправьте меня, если я ошибаюсь).
Поэтому, сделав это, я запустил миграцию, и все было в порядке.
Теперь мой вопрос таков;
Если все работало без каких-либо ошибок, то какая в этом польза от PostGIS.
Хотя я еще не использовал его, но все добавляют его в проект, в котором должен использоваться GeoDjango.
Зачем добавлять django.contrib.gis
в установленные приложения и зачем добавлять PostGis
расширение в базу данных postgresql.
Комментарии:
1. Postgis-это расширение для базы данных postgresql для поддержки пространственных запросов , django.contrib.gis имеет функции для django orm для выполнения пространственных запросов через django orm и добавления полей модели для столбцов геометрии , для получения дополнительной информации прочитайте docs.djangoproject.com/en/3.2/ref/contrib/gis
2. Не могли бы вы привести несколько примеров, пожалуйста.
3. Итак, можем ли мы сказать, что PostGIS просто добавляет больше функциональности в Django ORM для работы с GeoDjango и является необязательным??
4. Postgis , как я уже писал , является расширением postgresql, а не пакетом django, django через django.contrib.gis подключается к расширениям postgis для выполнения пространственных запросов и добавления поддержки геометрии, прочитайте ссылку на документацию geodjango, предоставленную в моем комментарии