我想为olwidget生成的OpenLayers地图添加一个额外的控件,以处理此示例中的点击: 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>
但是olwidget生成的javascript并没有将创建的地图分配给变量,所以我可以挂钩它:
new olwidget.Map("id_coords", [...], {...});
如果只是这样:
var map = new olwidget.Map("id_coords", [...], {...});
上面的代码会运行。
在这种情况下,最好的方法是什么?我应该操作生成地图脚本的olwidget模板还是更自然的方式?
感谢。
答案 0 :(得分:0)
最近更新了olwidget,现在可以定义用于在Meta类定义中呈现帖子的各个模板:
class PostForm(MapModelForm):
class Meta:
model = Post
template = 'posts/post_map.html'
因此,定义自定义模板并将地图分配给javascript变量似乎是正确的方法。