Найти - Пользователи
Полная версия: Как сохранить координаты маркера из ГуглМап в модель ГеоДжанго?
Начало » Django » Как сохранить координаты маркера из ГуглМап в модель ГеоДжанго?
1
Denzil
models.py:

class Location(models.Model):
    name = models.CharField(max_length=100, verbose_name=u"Локация", default=u'')
    coords = gis_models.PointField(u"долгота/широта", srid=4326, blank=True, null=True)
forms.py:

class LocationForm(forms.ModelForm):
    class Meta:
        model = Location
        fields = ['name']
views.py:

class AddLocationPageView(CreateView):
    model = Location
    form_class = LocationForm
    template_name = 'add_location.html'
add_location.html:

<form action="" method="POST">{% csrf_token %}
    <div id="map-add-location" ></div>
    <div class="col-md-5">
         {{ form }}
         <button type="submit">Add location</button>
    </div>
</form>
js:

$(document).ready(function(){
    map = new google.maps.Map($('#map-add-location')[0], mapOptions);
    map.addListener('click', function(e){
            placeMarker(e.latLng, map);
            var position = marker.getPosition();
    });
    var marker;
    function placeMarker(latLng, map) {
        marker = new google.maps.Marker({
            position: latLng,
            map: map,
        });
        return marker
    }
});

Как сохранить координаты маркера (var position в js) в Location.coords при сохранении формы?
Спасибо!!!
Denzil
сделал след изменения:
1 - в LocationForm сделал fields =
2 - map.addListener выглядит так:

map.addListener('click', function(e){
            placeMarker(e.latLng, map);
            var position = marker.getPosition();
            $('#id_coords').val(position);
        }
    });

Поле coords пока не делал скрытым, чтобы увидеть, что происходит. А происходит такое - Invalid geometry value

P.S. и еще одно.. не понимаю почему я не видел этого вчера, но когда я делаю migrate то выпадает ошибка - django.db.utils.ProgrammingError: ╨Ю╨и╨Ш╨С╨Ъ╨Р: ╤Б╤В╨╛╨╗╨▒╨╡╤Ж “coords” ╨╜╨╡╨╗╤М╨╖╤П ╨░╨▓╤В╨╛╨╝╨░╤В╨╕╤З╨╡╤Б╨║╨╕ ╨┐╤А╨╕╨▓╨╡╤Б╤В╨╕ ╨║ ╤В╨╕╨┐╤Г geometry HINT:
╨Т╨╛╨╖╨╝╨╛╨╢╨╜╨╛, ╨╜╨╡╨╛╨▒╤Е╨╛╨┤╨╕╨╝╨╛ ╤Г╨║╨░╨╖╨░╤В╤М “USING coords::geometry(Point,4326)”.

Help!!!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB