【发布时间】:2018-07-14 07:43:43
【问题描述】:
我有一个 Place 模型,它有一个多边形字段:
from django.contrib.gis.db import models
class Place(models.Model):
area = models.PolygonField()
我想翻译这个Place 模型实例的area 字段。
这是我现在的做法:
from django.contrib.gis.db.models.functions import Translate
place = Place.objects.get(pk=1)
place.area = Place.objects.filter(pk=place.pk).annotate(new_area=Translate('area', 0.001, 0.001)).first().new_area
place.save()
这看起来很hacky。我认为应该有一种方法可以通过以下方式做到这一点:
place = Place.objects.get(pk=1)
place.area = Translate(place.area, 0.001, 0.001)
place.save()
但这会引发异常。
我应该使用一些库吗?哪一个适用于 GeoDjango 及其模型/字段?
有什么更好的方法?
【问题讨论】:
标签: python django gis polygon geodjango