2012-02-05 7 views
1

にコントロールを追加するこの例のようにクリックを処理するためにolwidgetによって生成されたマップ: http://openlayers.org/dev/examples/click.htmlgeodjango/olwidget:私はOpenLayersを余分にコントロールを追加したいマップ

<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テンプレートを操作すべきか、もっと自然な方法がありますか?

ありがとうございました。 olwidgetへの最近のアップデートで

答えて

0

、メタクラス定義でポストをレンダリングするための個別のテンプレートを定義することが可能になりました:

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

ので、カスタムテンプレートを定義し、JavaScriptの変数と思われるにマップを割り当てます適切なアプローチであること。

関連する問題