2013-04-17 2 views
1

У меня есть модельДжанго 1,5 GeoDjango pointfield, как карты в админ инлайн

from django.contrib.gis.db import models 
class Venue(models.Model): 
    event = models.ForeignKey(Event, verbose_name=_('Event')) 
    name = models.CharField(max_length=32, unique=True) 
    geometry = models.PointField(srid=4326) 
    objects = models.GeoManager() 

Теперь я пытаюсь показать поле геометрии как карты в инлайн администратора класса

class VenueInline(admin.TabularInline): 
    model = Venue 
    extra = 1 

Но Джанго не показывает вместо текстовой области. Каков наилучший способ отображения карты внутри строк?

ответ

0

Вы можете использовать django-location-field:

from django.contrib.gis.db import models 
from location_field.models import LocationField 

class Venue(models.Model): 
    event = models.ForeignKey(Event, verbose_name=_('Event')) 
    name = models.CharField(max_length=32, unique=True) 
    geometry = LocationField(srid=4326) 
    objects = models.GeoManager() 

Для большего количества примеров, посмотрите на example_project models.py.

+0

На странице проекта есть примечание: этот проект в настоящее время непригоден и находится под тяжелой работой – ratata

+0

@ratata В настоящее время я работаю над некоторыми проблемами, поэтому это предупреждение будет удалено позже сегодня. – caio

+0

У моего Django есть эта функция по умолчанию через OSM (openstreetmaps) и OpenLayer Tech, я не знаю, чего пытается достичь OP. –