Use Leaflet in your django projects
See the documentation for more information.
It embeds Leaflet version 1.0.3.
- Install and enjoy ;
- Do not embed Leaflet assets in every Django project ;
- Enjoy geometry edition with Leaflet form widget ;
- Control apparence and settings of maps from Django settings (e.g. at deployment) ;
- Reuse Leaflet map initialization code (e.g. local projections) ;
|note:||django-leaflet is compatible with django-geojson fields, which allow handling geographic data without spatial database.|
- Lesser GNU Public License
- Leaflet Copyright - 2010-2011 CloudMade, Vladimir Agafonkin
- Set a default max zoom in leaflet.forms _setView to avoid an error.
- Fix the div ids to work with admin inlines.
- Django 1.11 compatibility
- Fix multipolyline/multipolygon and polyline/polygon not working
- Update Leaflet to 1.0.3 (#169)
- Update Leaflet-draw to 0.4.0 (#169)
- Update Proj4Leaflet to 1.0.0 (#169)
- Made static calls lazy, to fix issues with non-default STATICFILES_STORAGE (#149)
- Add example application (#168)
- Use SpatiaLite library path from environment variable for running test (#173)
- Fix max zoom level (#165)
- Add SPATIAL_EXTENT default value to the default settings (#167)
Many thanks to @KostyaEsmukov, @cleder, @sikmir and @seav for their contributions!
- Added leaflet.admin.LeafletGeoAdminMixin, useful for stacked or tabular inline forms (thanks @KostyaEsmukov, @Xowap)
- Fix compatibility with Django <= 1.7
- If the TILES setting contains an empty list, no default tiles layer is generated (thanks @dyve).
- Fix to allow multipoints saving (fixes #130, thanks @rukayaj)
- Fix settings override (#142, thanks @ndufrane)
- Fix for templatetags.leflet_js debug setting (#148, thanks @arctelix)
- Fixes for Django 1.10 compatibility (#138, thanks @PetrDiouhy)
- Use a LazyEncoder to allow lazy translations in settings (#132, thanks @Mactory)
- Enable settings_overrides also for admin (fixes #120, thanks @PetrDiouhy)
- Add tests for Django 1.9 and Python 3.5 (thanks @itbabu)
- Fix LeafletWidget behaviour on GeometryCollectionField (fixes #135)
- Update Leaflet to 0.7.7
- Update Leaflet-draw to 0.2.4
- Fix rendering of leaflet widget when initial value is an empty string
- Pass relative URLs for static files through django.contrib.staticfiles (thanks @dyve, fixes #111)
- Allow to override settings at the template tag level (thanks @PetrDiouhy, fixes #59)
- Update Leaflet to 0.7.5 (@dyve)
- Add Czech locale (thanks @PetrDiouhy)
- Fix interaction with django-geojson (#106, thanks @batisteo)
- Use protocol independant URLs in default OSM tiles (thanks @NotSqrt)
- Fix deprecated TEMPLATE_DEBUG (#121, thanks @josenaka)
- Fix errors with multi-word field names (#123, thanks @josemazo)
- Fix loadevent not being taken into account in forms (#127, thanks @josemazo)
- Add setting FORCE_IMAGE_PATH to bypass Leaflet guess on image paths (useful when using django-compressor) (thanks @nimasmi)
- Add Hebrew translations (thanks @nonZero)
- Map attribution can be translated using ugettext_lazy
- Fix widgets hanging forever with points (thanks @Azimkhan, fixes #90)
- Remove setTimeout when calling setView() (thanks @manelclos, fixes #89)
- Fix minZoom/maxZoom when undefined in settings (thanks Manel Clos)
- Allow to set any leaflet tileLayer option in TILES and OVERLAYS settings (fixes #70).
- Remove special characters in README (fixes #82)
- Fix translation in French (fixes #86)
- Fix es localization
- Add ability to add overlay tile layers via new setting OVERLAYS.
- Fix Django 1.7 support in tests (thanks Marco Badan)
- Add spanish translations (thanks David Martinez)
- Fix draw events being received for each draw control on the map. (Caution: map.drawControl attribute is not set anymore)
- Fix GeoJSON serialization when creating new MultiPoint records
- Make the only layer match the map max/min_zoom (fixes #67) (thanks Manel Clos)
- Added widget attribute to edit several fields on the same map
- Fix typo in default proj4js path (ref #71)
- Setup Projection machinery in Leaflet forms if necessary
- Django Leaflet forms fiels without libgeos installed (thanks Florent Lebreton)
- Prevent SRID download when default is used
- Fix SRID projection file not being loaded
- Upgrade to Leaflet 0.7.3
- Fix regression where maps have null as max zoom
- Fix GEOS dependency, back as optional for geometry edition only (fixes #65)
- Add minZoom and maxZoom to map initialization
- Add support of advanced static files locations, like S3 (thanks @jnm)
- Add support of Leaflet form fields on Django >= 1.4.2 (thanks GaÄĹ¤l Utard)
- Add support of GeoJSON fields
- Do not complain about tile extent if SRID is 3857
- Add control of metric and imperial in SCALE option (thanks @smcoll)
- Upgrade to Leaflet.draw 0.2.3
- Upgrade to Leaflet 0.7.2
- Python 3 support (thanks @itbabu)
- Upgrade to Leaflet 0.7.1
- Fix unsaved warning being always triggered on Internet Explorer.
- Added DE locale (thanks @rosscdh)
- Fix installation with python 2.6 (thanks @ollb)
- Fix name collision.
- Fix regression in Django leaflet options serialization.
- Switch to lazy gettext in leaflet module init.
- Fix drawing of multi-polygon (fixes #37)
- Fix attached data for events with jQuery fallback (fixes #38)
- Fix Leaflet library inclusion with “plugins=ALL” outside Admin.
- Do not include translations in every widgets outside Admin.
- Fix syntax error if form widget translations contains quotes.
- Fix dependency error if Leaflet is loaded after the form widget in the DOM.
- Respect plugins declaration order using OrderedDicts
- Prepend forms assets (instead of extend) if PLUGINS[‘forms’] already exists.
- Renamed Leaflet map fragment template
- Leaflet map geometry widgets for adminsite and forms (requires Django 1.6)
- Fix geometry type restriction in form fields (fixes #32)
- Use jQuery for triggering events, only if CustomEvent constructor is not available (fixes #27, fixes #34)
- Fix projection download error if not available
- Compute resolutions the same way TileCache does it, and provide example of TileCache configuration.
- Raise ImproperlyConfigured if TILES_EXTENT is not portrait (since not supported)
- Do not use console() to warn about deprecated stuff if not available (<IE9)
- Fix apparence of Reset view control for Leaflet 0.6
- Add French and Italian locales
- Fix JS error when no callback value is provided.
- Fix map initialization with default tiles setting
- Fix map fitBounds() to SPATIAL_EXTENT in settings
- The leaflet_map template tag no longer registers initialization functions in global scope, and no longer adds map objects into window.maps array by default. Use LEAFLET_CONFIG['NO_GLOBALS'] = False to restore these features.
- Initialization callback function no longer receives the map bounds in second argument, but the map options object.
- JS default callback function ( <name>Init() ) for map initialization is deprecated. Use explicit callback parameter in template tag, or listen to window event map:init instead. (See Use Leaflet API section in README.)
- TILES_URL entry in LEAFLET_CONFIG is deprecated. Use TILES instead.
- Settings lookup is restricted to LEAFLET_CONFIG dict. Most notably, SRID, MAP_SRID and SPATIAL_EXTENT at global Django settings level are discouraged.
- Add ability to associate layers attributions from settings
- Add auto-include key for entries in PLUGINS setting, in order to implicity load plugins with leaflet_css and leaflet_js tags.
- Rewrote map initialization, into less flexible and obstruvise way.
- Use plugin system for Leaflet.MiniMap.
- Add loadevent parameter to leaflet_map tag.
- Map initialization is now idempotent, does nothing if map is already initialized.
- Add ATTRIBUTION_PREFIX setting to control prefix globally.
- Upgrade to Leaflet 0.6.4
- Upgrade to Leaflet 0.6.2
- Upgrade Leaflet.Minimap (rev 3cd58f7)
- Upgrade Proj4Leaflet (rev f4f5b6d)
- Add minimap support
- Drop Leaflet version switching
- Update Leaflet to 0.5.1
- Update Leaflet.Minimap
- Fix apparence of Reset view button
- Fix div creation test in template.
- Remove imperial scale.
- Add create_div parameter
- Remove max resolution setting since it can be computed
- Allow scale control even if view is not set
- Upgrade Leaflet to 0.4.5
- Fix packaging of templates
- Use template for <head> fragment
- Do not rely on spatialreference.org by default
- Default settings for SRID
- Default settings for map extent
- Default map height
- Default tiles base layer
- map variable is not global anymore
- Initial support for map projection
- Show zoom scale by default
- Spatial extent configuration
- Initialization callback instead of global JS variable
- Leaflet version switching
- Global layers configuration
- Add IE conditional CSS
- Initial working version