获取django admin change_list中显示的数据

时间:2011-01-11 09:33:58

标签: django django-templates admin changelist

我有一个管理变更列表,其中包含公司和地址列表。我想将其绘制到谷歌地图上。我已经有谷歌地图了,并且在change_list中显示了正确的数据,并且我已经复制了change_lsit模板,所以我重写它。

他们的问题是我需要从页面获取数据,我假设它位于change_list对象中并将其放入javascript中,以便我可以将地址绘制到地图上。

但是我没能在change_list对象上找到任何doco或者如何获取显示的数据。通常情况下,您可以执行类似{%model.attribute%}的操作,如果我能够执行类似的操作并将其包装在一个非常棒的for循环中。

那么关于如何获取change_list中的数据的任何想法?

干杯

标记

1 个答案:

答案 0 :(得分:1)

至少有两种方法。 一种是使用来自javascript的api调用来获取数据。另一个,我认为你计划的是将change_list中的数据传递给你的模板。这是一个例子(可能是谷歌地图的过时,但会给你这个想法)。它假设change_list有两个字段lat和longt:

<div id="map" style="width: 100%; height: 300px;"></div>
<script type="text/javascript" charset="utf-8">
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setUIToDefault();

        {% for location in change_list %} 
            var point = new GLatLng({{ location.lat|default:"0.0" }}, {{ location.longt|default:"0.0" }});
            map.addOverlay(new GMarker(point)); 
        {% endfor %}
  }
</script>