首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >烧瓶-管理GeoAlchemy2示例没有显示地图

烧瓶-管理GeoAlchemy2示例没有显示地图
EN

Stack Overflow用户
提问于 2020-12-16 19:53:53
回答 1查看 154关注 0票数 0

我正在试着运行这个例子,说明如何使用显示地图的Flask:https://github.com/flask-admin/flask-admin/tree/master/examples/geo_alchemy

在README.rst中,有这样的指令:

  1. 您会注意到映射没有呈现。要查看它们,您必须在Mapbox注册一个免费帐户,并相应地设置MAPBOX_MAP_ID和MAPBOX_ACCESS_TOKEN配置变量。

我已经有了一个有效的MAPBOX_ACCESS_TOKEN,我去MapBox寻找一个MAPBOX_MAP_ID。在那里我看到MAP_ID被否决了,现在我必须获得一个tileset,它被描述为一个由MapBox本身组成的标签。

因此,我找到了它们在说明中描述的代码(在我的例子中,mapbox-streets-v8)并实现了config.py参数:

代码语言:javascript
复制
MAPBOX_MAP_ID = '<my_mapbox_user_name>.mapbox-streets-v8'
MAPBOX_ACCESS_TOKEN = 'pk.eyJ1...'

然而,我没有看到任何地图显示或任何错误信息。

我怎么才能修好它?

EN

回答 1

Stack Overflow用户

发布于 2020-12-17 13:28:18

我认为Lib\site-packages\flask_admin\static\admin\js\form.js.文件中有一个小错误为获取瓷砖而生成的原始URL是:

代码语言:javascript
复制
https://api.mapbox.com/styles/v1/mapbox/<MAPBOX_MAP_ID parameter>/tiles/12/2258/2457?access_token=<MAPBOX_ACCESS_TOKEN parameter>

然而,正确的办法是:

代码语言:javascript
复制
https://api.mapbox.com/styles/v1/<MAPBOX_MAP_ID parameter>/tiles/12/2258/2457?access_token=<MAPBOX_ACCESS_TOKEN parameter>

也就是说,我必须从URL中删除mapbox单词。

为此,我在form.js文件中做了一些更改:

代码语言:javascript
复制
      //var mapboxUrl = 'https://api.mapbox.com/styles/v1/mapbox/'+window.MAPBOX_MAP_ID+'/tiles/{z}/{x}/{y}?access_token='+window.MAPBOX_ACCESS_TOKEN
      var mapboxUrl = 'https://api.mapbox.com/styles/v1/'+window.MAPBOX_MAP_ID+'/tiles/{z}/{x}/{y}?access_token='+window.MAPBOX_ACCESS_TOKEN

那么,它现在起作用了:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65330257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档