geodjango / olwidget: добавление элемента управления на карту - PullRequest
1 голос
/ 06 февраля 2012

Я хочу добавить дополнительный элемент управления на карту OpenLayers, сгенерированную olwidget для обработки кликов, как в этом примере: http://openlayers.org/dev/examples/click.html

<script>
    OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {
        ... click handling code goes here ...
    });

    var click = new OpenLayers.Control.Click();
    map.addControl(click);
    click.activate();
</script>

Но JavaScript, сгенерированный olwidget, не назначает созданную картук переменной, чтобы я мог подключить ее:

new olwidget.Map("id_coords", [...], {...});

Если бы это было так:

var map = new olwidget.Map("id_coords", [...], {...});

Вышеприведенный код запустился бы.

Каков наилучший подходв этом случае?Должен ли я манипулировать шаблоном olwidget, который генерирует скрипт карты, или есть более естественный способ?

Спасибо.

1 Ответ

0 голосов
/ 08 февраля 2012

С недавним обновлением olwidget теперь можно определять отдельные шаблоны для отображения постов в определении мета-класса:

class PostForm(MapModelForm):
    class Meta:
        model = Post
        template = 'posts/post_map.html'

Таким образом, определение пользовательского шаблона и назначение карты переменной javascript представляется правильным подходом.

...