Django 模型创建地理而不是几何字段

标签 django postgresql postgis sqlgeography sqlgeometry

我有一个 Django 模型,我在其中声明 maplocation = models.PointField() 我想使用地理而不是几何,如果我使用 python manage.py sql 它映射为 "maplocation"geometry(POINT,4326) NOT NULL,

我需要做什么才能使翻译正确?

最佳答案

不太清楚,但有一些提示:

  1. 您需要安装 PostGIS 1.5+。

  2. 像这样定义字段:maplocation = models.PointField(geography=True)

  3. 将模型管理器设置为 django.contrib.gis.db.models.GeoManager(我认为这不是使用地理所必需的,但稍后您将需要它来进行查询)。

关于Django 模型创建地理而不是几何字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20305747/

相关文章:

python - Django 1.8 UpdateView 生成 405 错误和空白模板

django - 多对多的独特组合

python - Django 表单向导 : passing data between forms

django - 我如何从 postgresql View 表中获取对象列表来显示

postgresql - PostGIS 中的 K 最近邻查询

python - 在 virtualenv 中运行测试时 Django MySQL 错误

mysql - 将属性表作为列和值连接?

Postgresql:创建一个没有权限的新用户?

postgresql - 与 ST_DWithin 的奇怪区别 - 地理与几何

postgresql - 将 GIS 点分成彼此靠近的点组