问题标签 [geodjango]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1372 浏览

django - GeoDjango 任意两点之间的最远距离

我有一个Point对象集合。我想找到任意两点之间的最远距离。想象一个包含所有这些点的圆圈。我想知道那个圆的直径。我怎样才能在 GeoDjango 中做到这一点?

编辑:这是我到目前为止所拥有的:

???

那是什么单位?这甚至是我追求的价值吗?

edit2:好的,我将尝试另一种方式:

?? 再次,这些单位是什么?

0 投票
6 回答
40673 浏览

gis - 你怎么知道 shp 文件使用什么 SRID?

我正在尝试将 SHP 文件放入我的 PostGIS 数据库中,数据只是有点偏离。我认为这是因为我使用了错误的 SRID。PRJ文件内容如下:

这与什么 SRID 相关?更一般地说,如何根据 PRJ 文件中的信息查找 SRID?某处是否有列出所有 SRID 及其“geogcs”等价物的查找表?

使用srid=4269和 4326 导入的数据是完全相同的结果。

这是否意味着我使用了错误的 SRID,或者这只是预期的误差范围?

shp 文件来自这里

0 投票
3 回答
628 浏览

python - GeoDjango 入门问题

一旦我添加“from django.contrib.gis.db import models”而不是“from django.db import models”,Django 就会停止识别应用程序并给出以下错误:

一旦我注释掉“从 django.contrib.gis.db 导入模型”,错误就会消失......

我已将“django.contrib.gis”和“位置”应用程序正确添加到 INSTALLED_APPS 设置中。

任何线索为什么会发生这种情况?我在 Windows 笔记本电脑上使用 Django v1.1.1 final 运行。

0 投票
2 回答
3048 浏览

django - Getting GeoDjango + Spatialite running on Windows

I continue to have problems setting up a GeoDjango installation that uses Spatialite as a backend on a Windows machine.

I used the GeoDjango installer and downloaded the precompiled libraries from http://www.gaia-gis.it/spatialite/binaries.html, and dumped them into my geodjango/bin directory.

I upgraded my pysqlite2 installation to the newest version, so that extensions can be loaded and I specified SPATIALITE_LIBRARY_PATH in my settings file.

When I run manage syncdb I get the following output

However, when setting up the indices for the table I get the following message:

I tried to ignore the message, however my models would not save correctly.

I am a little baffled, because the Spatialite library seems to be used and has the "RTree" extension enabled, yet I still get the error message. There is not much information about this error available online; I found the RTree Documentation at sqlite.org/rtree.html, however I was under the impression that it is already included in spatialite because it is listet under "supported extensions".

Do I really need to compile my own sqlite library? Can somebody provide a .dll that already has RTree included? Am I doing something completely wrong? Any help is appreciated, thanks!

0 投票
2 回答
1793 浏览

python - GeoDjango 距离搜索

我想使用 GeoDjango 进行基本的位置搜索。具体来说,我想给搜索功能一个邮政编码/城市/县,并找到 5mi、10mi、20mi 等范围内的所有邮政编码/城市/县。我在文档中找到了以下段落:

使用地理坐标系可能会在以后给开发人员带来复杂性。例如,PostGIS 不具备使用地理坐标系执行非点几何之间的距离计算的能力,例如,构建查询以查找存储为 WGS84 的县边界 5 英里内的所有点。[6]

如果我想使用 PostGIS 并能够在美国进行上述搜索,这究竟意味着什么?文档建议使用投影坐标系仅覆盖特定区域。我需要覆盖整个国家,所以我认为这不是一个选择。

基本上最后我希望能够在给定起始位置和距离的情况下找到相邻的邮政编码/城市/县。我真的不在乎这是如何在技术层面上完成的。

另外,我在哪里可以找到包含美国邮政编码/城市/县的地理边界的数据库,我可以将其导入 GeoDjango 模型?

更新

我在这里找到了一个包含美国所有邮政编码的经纬度坐标的数据库。我的计划是将这些点导入到 GeoDjango 模型中,并使用 PostGis 构建查询,以查找距给定点 x 英里内的其他点。这解决了文档中提出的问题,因为所有邮政编码都被视为点而不是多边形。这对我的用例来说很好,因为我不关心完美的准确性。

好处:数据文件是免费的

坏处:这些数据来自 2000 年的人口普查,所以它已经过时了

有点希望:美国人口普查局每 10 年进行一次人口普查,时间快到 2010 年了

结论:对我来说已经足够了

0 投票
2 回答
1094 浏览

python - 使用 Python simplejson 返回预生成的 json

我有一个不想序列化为 json 的 GeoDjango 模型对象。在我看来,我这样做:

问题在于simplejson将 a.area.geojson 视为一个简单的字符串,即使它是漂亮的预生成 json。这很容易通过 'ing 区域字符串在客户端中修复eval(),但我想正确地做到这一点。我可以告诉simplejson一个特定的字符串已经是 json 并且应该按原样使用(而不是作为简单字符串返回)吗?还是有其他解决方法?

更新 澄清一下,这是当前返回的 json:

挑战在于让“区域”成为一个 json 字典而不是一个简单的字符串。

0 投票
2 回答
2829 浏览

python - django,基于位置的搜索

原谅我的无知,我什至不确定这个的正确术语。我想要做的是在我的 django 应用程序中按城市和州或邮政编码搜索,并且还包括该位置特定距离内的结果(25、50、75 英里)。

我猜你可能需要将城市和州或邮政编码转换为经纬度,然后根据它进行搜索。这是正确的还是在 django 应用程序中完成此操作的最佳方法是什么?有谁知道退出的应用程序已经这样做了,所以我可以看看代码?

谢谢您的帮助。

0 投票
2 回答
1996 浏览

python - geodjango - 按城市、州或邮政编码搜索

如何使用 geodjango 在我的 django 应用程序中按城市和州或邮政编码进行搜索?我对 geodjango 很陌生,只是想弄清楚这会涉及到什么。

另外,有人知道已经实现此功能的应用程序吗?

0 投票
1 回答
4069 浏览

django - GeoDjango,dwithin 和 distance_lt 之间的区别?

使用geoDjango,有什么区别

?
他们是同一件事,还是他们在做微妙不同的事情?

0 投票
1 回答
1180 浏览

django - 即使使用 TransactionTestCase 在 Django 中使用 PostGIS 获取“InternalError:没有这样的保存点”

刚刚添加了 geoDjango 并将数据库移至 PostGIS。我有一堆单独通过的单元测试,但是当一起运行时,我得到一个 IntenalError 数据库在测试之间脾气暴躁。在这些测试中使用的模型是 django.contrib.gis.db 模型。测试甚至继承自 TransactionTestCase 而不是常规的 TestCase 类。两者的情况相同。有趣的是,当我切换回 MySQL 时,它们都运行得很好。但是我不能继续使用 MySQL,因为接下来我需要编写距离查询。

如何使用 postgres 在 geoDjango 中自动化这些测试?我该怎么办?


PS是:我有settings.py的东西:

这是堆栈跟踪:

这是单元测试:

而且,这是 postgres 日志的样子: