Skip to main content

django-treasuremap app, makes it easy to store and display the location on the map using different providers (Google, Yandex).

Project description


django-treasuremap app, makes it easy to store and display the location on the map using different providers (Google, Yandex, etc).


  • Python 2.7+ or Python 3.4+

  • Django 1.11+


Use your favorite Python package manager to install the app from PyPI, e.g.


pip install django-treasuremap

Add treasuremap to INSTALLED_APPS:




Within your, you’ll need to add a setting (which backend to use, etc).


    'BACKEND': '',
    'API_KEY': 'Your API key',
    'SIZE': (400, 600),
    'MAP_OPTIONS': {
        'zoom': 5

Example usage

In models

from django.db import models
from treasuremap.fields import LatLongField

class Post(models.Model):
    name = models.CharField(max_length=100)
    point = LatLongField(blank=True)

In admin

from django.contrib import admin
from treasuremap.widgets import AdminMapWidget

from .models import Post

class PostAdmin(admin.ModelAdmin):
    def formfield_for_dbfield(self, db_field, **kwargs):
        if == 'point':
            kwargs['widget'] = widgets.AdminMapWidget()
        return super(PostAdmin,self).formfield_for_dbfield(db_field,**kwargs)

In forms

from django import forms
from treasuremap.forms import LatLongField

class PostForm(models.Model):
    point = LatLongField()
    <!-- jQuery is required; include if need -->
    <script type="text/javascript" src="//"></script>

<form method="POST" action=".">
    {{ }}
    {% csrf_token %}
    {{ form.as_p }}

Depending on what backend you are using, the correct widget will be displayed with a marker at the currently position (jQuery is required).


Support map:

  • Google map

  • Yandex map

Other settings:

  • API_KEY - if need, default None

  • SIZE - tuple with the size of the map, default (400, 400)

  • ONLY_MAP - hide field lat/long, default True

  • MAP_OPTIONS - dict, used to initialize the map, default {'latitude': 51.562519, 'longitude': -1.603156, 'zoom': 5}. latitude and longitude is required, do not use other “LatLong Object”.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-treasuremap-0.3.4.tar.gz (10.0 kB view hashes)

Uploaded Source

Built Distribution

django_treasuremap-0.3.4-py2.py3-none-any.whl (12.3 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page