2

所以...我在需要坐标将标记设置到不同位置的项目中使用了地图。我有很多选项可以获取坐标。

  1. 将坐标存储在数据库中并使用 django 视图获取坐标并将其转发到使用 ajax 响应的 javascript 函数。

  2. 将其存储到 python 列表或字典中,并在需要时将数据发送到该 javascript 函数。

  3. 在 HTML 标记属性中硬编码坐标并通过 javascript 获取它们,然后设置标记。

  4. 在 django 视图中使用文件并通过文件 I/O 获取数据并将其转发给 javascript 函数。

我想知道这些技术中的哪一种对大约 50 组坐标有效,如果我的组增加到大约 1000,哪一种会更充分?

如果您有更好的方法来做到这一点...请分享..谢谢

4

1 回答 1

1

我认为最好的方法是将这些数据存储在数据库中,原因如下:

  1. 您将能够对这些数据执行一些查询,例如“给我视口中的所有点”或“给我所有距离其他点 5 公里的点”——即使您现在不需要它也可能是将来非常有用,特别是如果您考虑拥有大约 1000 点
  2. 有很好的工具可以在数据库中保存坐标,与 Django 集成得很好——你一定要检查 postgis 和 geodjango
  3. 您正在使用 Django,因此您可能在数据库中还有一些其他数据,并且很高兴将所有内容都放在一个地方
  4. 除非您希望在地图上显示的某种静态数据不太可能发生变化,否则将其保存在数据库之外的任何地方都是不合适的。

如果由于某种原因您不想使用任何数据库(即使您始终可以使用 sqlite 将此数据存储在文件中),您也可以尝试将其存储在一些 python 对象中,然后将它们发送到 js(所以第二个选项) ,我认为第三个是最糟糕的——你无法在 javascript 之外对这些数据进行任何操作,这将很难读取或调试(例如语法错误)。

Hth

于 2012-08-04T11:18:41.170 回答