解决在admin/xadmin后台利用GeoDjango内置的Openlayers加载地图添加坐标的错误

在Django 2.0.12+xadmin集成GeoDjango的环境中,使用OpenLayers加载地图时遇到'ol is not defined'的错误。问题源于js文件引用顺序不正确。通过调整openlayers.html模板中引入的两个js文件顺序,成功解决了地图显示问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查看配置环境:

Django 2.0.12+xadmin/admin+GeoDjango

起初不能显示地图报错:

Uncaught ReferenceError: ol is not defined

var base_layer = new ol.layer.Tile({
    source: new ol.source.XYZ({
  
  

查看引用的js文件不知道为何跑最后去了,然后在openlayers.html模板中引入两个js文件,OK:


<script src="https://cdn.bootcss.com/openlayers/3.20.1/ol.js"></script>
<script type="text/javascript" src="/static/gis/js/OLMapWidget.js"></script>

<div id="{
  
  { id }}_div_map">
    <div id="{
  
  { id }}_map"></div>
    {% if not disabled %}<span class="clear_features"><a href="javascript:{
  
  { module }}.clearFeatures()">{% trans "Delete all Features" %}</a></span>{% endif %}
    {% if display_raw %}<p>{% trans "Debugging window (serialized value)" %}</p>{% endif %}
    <textarea id="{
  
  { id }}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值