2017-02-17 83 views
2

这可能很平凡,但我找不到这个错误。我只是按照GitHub上的文档完成了初始设置。我已经开始一个新的应用程序。安装了django-leafletdjango-geojson,创建了一个最小的models.py以及admin.py。django-leaflet + django-geojson:我不能在Admin中放置标记(TypeError:L.drawLocal.draw.toolbar.finish未定义)

当我尝试通过管理员在地图上放置一个标记。没有任何反应,并且左侧的绘图标记和多边形图标丢失。

我一定错过了一个依赖项,忘记了一些微不足道的东西。但是我一遍又一遍地重复着这些文件,而且我一定会睁大眼睛看着自己。

我还没有创建视图或模板。只有模型和管理员。并迁移了数据库。


以下是Chrome和Firefox的控制台日志。

Chrome

spritesheet.svg Failed to load resource: the server responded with a status of 404 (Not Found) 
leaflet.draw.js:9 Uncaught TypeError: Cannot read property 'title' of undefined 
    at e.getActions (leaflet.draw.js:9) 
    at e._createActions (leaflet.draw.js:9) 
    at e._showActionsToolbar (leaflet.draw.js:9) 
    at e._handlerActivated (leaflet.draw.js:9) 
    at e.fireEvent (leaflet.js:6) 
    at enable (leaflet.draw.js:8) 
    at HTMLAnchorElement.s [as _leaflet_click33] (leaflet.js:8) 

Firefox

10:34:46.995 TypeError: L.drawLocal.draw.toolbar.finish is undefined 1 leaflet.draw.js:9:15973 

    L.DrawToolbar<.getActions  http://127.0.0.1:8000/static/leaflet/draw/leaflet.draw.js:9:15973 
    L.Toolbar<._createActions  http://127.0.0.1:8000/static/leaflet/draw/leaflet.draw.js:9:12001 
    L.Toolbar<._showActionsToolbar http://127.0.0.1:8000/static/leaflet/draw/leaflet.draw.js:9:12614 
    L.Toolbar<._handlerActivated  http://127.0.0.1:8000/static/leaflet/draw/leaflet.draw.js:9:11700 
    o.Evented<.fire     http://127.0.0.1:8000/static/leaflet/leaflet.js:5:4955 
    L.Draw.Feature<.enable   http://127.0.0.1:8000/static/leaflet/draw/leaflet.draw.js:8:1810 
    o.DomEvent._on/h     http://127.0.0.1:8000/static/leaflet/leaflet.js:6:11671 

installed packages

appdirs==1.4.0 
Django==1.10.5 
django-geojson==2.9.1 
django-leaflet==0.20.0 
jsonfield==1.0.3 
olefile==0.44 
packaging==16.8 
Pillow==4.0.0 
psycopg2==2.6.2 
pyparsing==2.1.10 
six==1.10.0 

geodjango/settings.py

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.gis', 
    'leaflet', 
    'djgeojson', 
    'djangomap', 
] 

djangomap/models.py

from django.db import models 
from djgeojson.fields import PointField 

class MapMarker(models.Model): 
    geom = PointField() 

djangomap/admin.py

from django.contrib import admin 
from leaflet.admin import LeafletGeoAdmin 

from djangomap.models import MapMarker 

admin.site.register(MapMarker, LeafletGeoAdmin) 
+0

我有完全相同的问题 – Harry

回答

2

django-leaflet 0.20.0 required leaflet.draw 0.4 but provide 0.3。 解决此问题的请求在这里https://github.com/makinacorpus/django-leaflet/pull/179,但它仍未合并。
对我来说,快速修复是 pip uninstall django-leaflet pip install django-leaflet-cadasta

相关问题