【发布时间】:2020-12-19 03:43:34
【问题描述】:
我尝试了几种方法通过 iframe 将 openstreetmap 合并到我的 django 应用程序中。我可以很好地看到地图并且可以放大或缩小,但它始终是安提瓜的地图。我想在我的 django 模板中嵌入一张小地图,并从 jinja 传入经纬度。无论我传入硬编码的 lon 和 lat 还是 jinja 都没有区别,我仍然在 openstreetmaps 中得到相同的地图。
我从 openstreetmaps wiki https://wiki.openstreetmap.org/wiki/OpenLinkMap 的这个模板开始:
<iframe width="420" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.openlinkmap.org/small.php?lat=<LAT>&lon=<LON>&zoom=<ZOOM>" style="border: 1px solid black"></iframe>
无论我是硬编码还是放置动态值,我都会看到安提瓜的地图。我尝试从 jinja 传入参数:
<iframe width="420" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.openlinkmap.org/small.php?lat={{ li.latitude }}&lon={{ li.longitude }}&zoom=10" style="border: 1px solid black"></iframe>
那没有用,所以我尝试只输入 long 和 lan,但我仍然得到 Antigua:
但以下作为 url 链接可以正常工作并传入正确的参数:
<a href="https://www.openstreetmap.org/#map=12/{{ li.latitude }}/{{ li.longitude }}" target="_blank"><b>View Larger Map</b></a>
我是 openstreetmaps、django 和 jinja 的新手,看不到哪里出错了。
【问题讨论】:
标签: django iframe jinja2 openstreetmap