在Ubuntu上使用GeoDjango和SpatiaLite时出错

2024-06-08 22:33:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让GeoDjango在ubuntu11.04上运行SpatiaLite,即使设置非常小,我也遇到了一个奇怪的错误。保存带有地理字段的模型实例是可行的,但是再次加载它时会出现一个exception

Error encountered checking Geometry returned from GEOS C function "GEOSWKBReader_read_r".

我的settings.py的相关部分

^{pr2}$

testapp.models

from django.contrib.gis.db import models

class TestModel(models.Model):
    name = models.CharField(max_length=10)
    location = models.PointField()

testapp.admin

from django.contrib.gis import admin

from testapp.models import TestModel

admin.site.register(TestModel, admin.OSMGeoAdmin)

/edit:同样的代码在PostgreSQL/postgis上可以正常工作


Tags: django实例from模型importadminmodels错误
1条回答
网友
1楼 · 发布于 2024-06-08 22:33:17

好吧,我自己发现了问题:我忘了使用models.GeoManager作为默认管理器。这解决了我的问题:

class TestModel(models.Model):
    name = models.CharField(max_length=10)
    location = models.PointField()

    objects = models.GeoManager()

相关问题 更多 >