我在设置GeoDjango安装时仍然遇到问题,该安装使用Spatialite作为Windows机器的后端.
我使用了GeoDjango安装程序并从http://www.gaia-gis.it/spatialite/binaries.html下载了预编译库,并将它们转储到我的geodjango/bin目录中.
我将我的pysqlite2安装升级到最新版本,以便可以加载扩展并SPATIALITE_LIBRARY_PATH
在我的设置文件中指定.
当我运行时,manage syncdb
我得到以下输出
C:\stuff>manage.py syncdb SpatiaLite version ..: 2.3.1 Supported Extensions: - 'VirtualShape' [direct Shapefile access] - 'VirtualText' [direct CSV/TXT access] - 'VirtualNetwork [Dijkstra shortest path] - 'RTree' [Spatial Index - R*Tree] - 'MbrCache' [Spatial Index - MBR cache] - 'VirtualFDO' [FDO-OGR interoperability] - 'SpatiaLite' [Spatial SQL - OGC] PROJ.4 Rel. 4.6.1, 21 August 2008 GEOS version 3.0.2-CAPI-1.4.2
但是,在为表设置索引时,我收到以下消息:
... Installing custom SQL for core.LocationHint model updateTableTriggers: "no such module: rtree" ...
我试图忽略该消息,但我的模型无法正确保存.
我有点困惑,因为似乎使用了Spatialite库并启用了"RTree"扩展,但我仍然收到错误消息.关于此错误的在线信息不多; 我在sqlite.org/rtree.html找到了RTree文档,但我的印象是它已经包含在spatialite中,因为它是在"支持的扩展"下的监听.
我真的需要编译自己的sqlite库吗?有人可以提供已包含RTree的.dll吗?我做错了什么吗?任何帮助表示赞赏,谢谢!