【问题标题】:can't adapt type 'Point' in Django postgresql无法在 Django postgresql 中调整类型“Point”
【发布时间】:2015-12-08 09:16:26
【问题描述】:

我有一个名为车辆的模型,并且与它相关联。

    class Trip(models.Model):
        trip_id = models.UUIDField(primary_key=True, default=uuid.uuid4)
        distance_unit = models.CharField(max_length=255)
        distance = models.FloatField(default=0)
        duration = models.IntegerField(default=0)
        dir_points = ArrayField(models.PointField(srid=4326,null=True), blank=True, null=True)

现在,当我尝试向此行程模型添加新几何点时,它会显示“无法适应类型‘点’”。我已经在谷歌上搜索了很多方法,但都是徒劳的。你能帮帮我吗...我怎样才能将新的几何点附加到这个数组字段。如果您需要其他信息,请告诉我。 我正在使用 django 1.8 版和 python 2.7.6 版。

【问题讨论】:

  • settings.py 文件中你的数据库 ENGINE 是什么?
  • 给出的答案是否解决了您的问题。
  • @doru 我使用 postgresql 作为数据库引擎

标签: python django postgresql


【解决方案1】:

试试这个

from django.contrib.gis.geos import GEOSGeometry
A.geoCoords = GEOSGeometry('POINT(LAT LON)', srid=4326)

详细信息see

https://docs.djangoproject.com/en/dev/ref/contrib/gis/geos/#what-is-geos

【讨论】:

  • 其中 lat 和 lon 分别表示纬度和经度,srid 是可选的,表示空间参考系统标识符。我还在答案中添加了链接。
猜你喜欢
  • 2021-01-13
  • 2014-04-06
  • 1970-01-01
  • 2023-01-30
  • 2021-03-29
  • 2011-05-01
  • 2016-03-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多